{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "# import modules\n",
    "import pandas\n",
    "from sklearn import svm\n",
    "import tensorflow as tf\n",
    "import numpy as np\n",
    "from sklearn.decomposition import PCA\n",
    "from pylab import *\n",
    "import struct\n",
    "import keras as ks\n",
    "import logging\n",
    "from keras.layers import Dense, Activation, Flatten, Convolution2D\n",
    "from keras.utils import np_utils\n",
    "from keras.models import model_from_json\n",
    "from keras import backend as K\n",
    "\n",
    "from sklearn.neighbors import KNeighborsClassifier\n",
    "from sklearn.tree import DecisionTreeClassifier\n",
    "from sklearn.ensemble import RandomForestClassifier, AdaBoostClassifier\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "from skimage import io\n",
    "import numpy as np\n",
    "from PIL import Image \n",
    "from scipy import misc\n",
    "import os\n",
    "# ..."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 数据读取和预处理\n",
    "label 3个 => 4个\n",
    "- normal: 2462\n",
    "- cpu   : 373\n",
    "- mem   : 266\n",
    "- io    : 592"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "2462\n",
      "373\n",
      "266\n",
      "592\n",
      "(3693,)\n"
     ]
    }
   ],
   "source": [
    "# 3888 * 51 with 4 labels\n",
    "data_raw = pandas.read_csv(\"data/host10280-labeled-2.csv\")\n",
    "data = np.array(data_raw)\n",
    "data_raw = pandas.read_csv(\"data/host10274-labeled-2.csv\")\n",
    "data = np.concatenate((data,np.array(data_raw)),axis=0)\n",
    "data_raw = pandas.read_csv(\"data/host10283-labeled-2.csv\")\n",
    "data = np.concatenate((data,np.array(data_raw)),axis=0)\n",
    "\n",
    "# 50 = 2 ids + 45 features + 3 labels\n",
    "# ids: host + clock\n",
    "# labels: normal, cpu, mem, io\n",
    "data_features = data[:,2:47]\n",
    "data_labels = data[:,46:50]\n",
    "\n",
    "len(data_labels)\n",
    "for i in range(len(data_labels)):\n",
    "    item = data_labels[i]\n",
    "    if item[1] == 0 and item[2] == 0 and item[3] == 0:\n",
    "        data_labels[i][0] = 1\n",
    "    else:\n",
    "        data_labels[i][0] = 0\n",
    "\n",
    "data_class = [] # 0 ~ 3\n",
    "for label in data_labels:\n",
    "    data_class.append(np.dot([0,1,2,3],label))\n",
    "data_class = np.array(data_class,dtype=\"int\")\n",
    "\n",
    "print(sum(data_class == 0))\n",
    "print(sum(data_class == 1))\n",
    "print(sum(data_class == 2))\n",
    "print(sum(data_class == 3))\n",
    "print(data_class.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "# 1231 abnormal\n",
    "num_sample = sum(data_class != 0)\n",
    "# select 1231 normal samples randomly\n",
    "data_tmp = data_features[data_class == 0]\n",
    "index_tmp = np.arange(0,data_tmp.shape[0],data_tmp.shape[0]/num_sample)[0:num_sample]\n",
    "data_normal_tmp = data_tmp[index_tmp]\n",
    "\n",
    "data_features = np.concatenate((data_normal_tmp,                 data_features[data_class != 0]),axis=0)\n",
    "data_labels   = np.concatenate((np.array([[1,0,0,0]]*num_sample),data_labels[data_class != 0]),  axis=0)\n",
    "data_class    = np.concatenate((np.array([0]*num_sample),        data_class[data_class != 0]),   axis=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 调整为2分类问题"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "data_labels = data_labels[:,0:2]\n",
    "data_labels[data_class != 0] = [0,1]\n",
    "data_labels[data_class == 0] = [1,0]\n",
    "data_class[data_class != 0] = 1\n",
    "data_class[data_class == 0] = 0"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 划分训练集和验证集\n",
    "- 训练集: 80%\n",
    "- 验证集: 20%"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(2954, 45)\n",
      "(2954, 2)\n",
      "(2954,)\n",
      "(739, 45)\n",
      "(739, 2)\n",
      "(739,)\n"
     ]
    }
   ],
   "source": [
    "# feature scaling\n",
    "for i in range(data_features.shape[1]):\n",
    "    d_min = data_features[:,i].min()\n",
    "    d_max = data_features[:,i].max()\n",
    "    if d_min == d_max:\n",
    "        data_features[:,i] = 1\n",
    "        continue\n",
    "    data_features[:,i] -= d_min\n",
    "    data_features[:,i] /= (d_max - d_min)\n",
    "\n",
    "num_tosample = len(data_class)\n",
    "index_test = np.arange(0,num_tosample,5)\n",
    "index_train = np.array(list(set(np.arange(0,num_tosample,1)) - set(index_test)))\n",
    "\n",
    "data_train = data_features[index_train]\n",
    "labels_train = data_labels[index_train]\n",
    "class_train = data_class[index_train]\n",
    "data_test = data_features[index_test]\n",
    "labels_test = data_labels[index_test]\n",
    "class_test = data_class[index_test]\n",
    "print(data_train.shape)\n",
    "print(labels_train.shape)\n",
    "print(class_train.shape)\n",
    "print(data_test.shape)\n",
    "print(labels_test.shape)\n",
    "print(class_test.shape)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 神经网络\n",
    "45 => 128 => 64 => 32 => 16 => 4"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "WARNING:tensorflow:From /Users/lyq/Anaconda/anaconda2/lib/python2.7/site-packages/keras/backend/tensorflow_backend.py:2755: calling reduce_sum (from tensorflow.python.ops.math_ops) with keep_dims is deprecated and will be removed in a future version.\n",
      "Instructions for updating:\n",
      "keep_dims is deprecated, use keepdims instead\n",
      "WARNING:tensorflow:From /Users/lyq/Anaconda/anaconda2/lib/python2.7/site-packages/keras/backend/tensorflow_backend.py:1290: calling reduce_mean (from tensorflow.python.ops.math_ops) with keep_dims is deprecated and will be removed in a future version.\n",
      "Instructions for updating:\n",
      "keep_dims is deprecated, use keepdims instead\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Users/lyq/Anaconda/anaconda2/lib/python2.7/site-packages/keras/models.py:848: UserWarning: The `nb_epoch` argument in `fit` has been renamed `epochs`.\n",
      "  warnings.warn('The `nb_epoch` argument in `fit` '\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train on 1969 samples, validate on 493 samples\n",
      "Epoch 1/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.6361 - acc: 0.7369 - val_loss: 0.5274 - val_acc: 0.9432\n",
      "Epoch 2/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.4003 - acc: 0.9528 - val_loss: 0.2418 - val_acc: 1.0000\n",
      "Epoch 3/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.2145 - acc: 0.9619 - val_loss: 0.0865 - val_acc: 1.0000\n",
      "Epoch 4/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0715 - acc: 0.9995 - val_loss: 0.0336 - val_acc: 1.0000\n",
      "Epoch 5/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0254 - acc: 1.0000 - val_loss: 0.0189 - val_acc: 1.0000\n",
      "Epoch 6/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0141 - acc: 1.0000 - val_loss: 0.0104 - val_acc: 1.0000\n",
      "Epoch 7/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0091 - acc: 1.0000 - val_loss: 0.0072 - val_acc: 1.0000\n",
      "Epoch 8/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0064 - acc: 1.0000 - val_loss: 0.0053 - val_acc: 1.0000\n",
      "Epoch 9/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0048 - acc: 1.0000 - val_loss: 0.0039 - val_acc: 1.0000\n",
      "Epoch 10/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 0.0048 - acc: 1.000 - 0s - loss: 0.0036 - acc: 1.0000 - val_loss: 0.0030 - val_acc: 1.0000\n",
      "Epoch 11/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0028 - acc: 1.0000 - val_loss: 0.0023 - val_acc: 1.0000\n",
      "Epoch 12/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0022 - acc: 1.0000 - val_loss: 0.0018 - val_acc: 1.0000\n",
      "Epoch 13/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0017 - acc: 1.0000 - val_loss: 0.0014 - val_acc: 1.0000\n",
      "Epoch 14/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0013 - acc: 1.0000 - val_loss: 0.0011 - val_acc: 1.0000\n",
      "Epoch 15/1000\n",
      "1969/1969 [==============================] - 0s - loss: 0.0010 - acc: 1.0000 - val_loss: 8.1791e-04 - val_acc: 1.0000\n",
      "Epoch 16/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.7124e-04 - acc: 1.0000 - val_loss: 6.5426e-04 - val_acc: 1.0000\n",
      "Epoch 17/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.9243e-04 - acc: 1.0000 - val_loss: 5.2223e-04 - val_acc: 1.0000\n",
      "Epoch 18/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6045e-04 - acc: 1.0000 - val_loss: 3.7048e-04 - val_acc: 1.0000\n",
      "Epoch 19/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5436e-04 - acc: 1.0000 - val_loss: 2.8968e-04 - val_acc: 1.0000\n",
      "Epoch 20/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7533e-04 - acc: 1.0000 - val_loss: 2.4683e-04 - val_acc: 1.0000\n",
      "Epoch 21/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.2076e-04 - acc: 1.0000 - val_loss: 1.8242e-04 - val_acc: 1.0000\n",
      "Epoch 22/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7720e-04 - acc: 1.0000 - val_loss: 1.4743e-04 - val_acc: 1.0000\n",
      "Epoch 23/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4403e-04 - acc: 1.0000 - val_loss: 1.2545e-04 - val_acc: 1.0000\n",
      "Epoch 24/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1962e-04 - acc: 1.0000 - val_loss: 1.0214e-04 - val_acc: 1.0000\n",
      "Epoch 25/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0030e-04 - acc: 1.0000 - val_loss: 8.5397e-05 - val_acc: 1.0000\n",
      "Epoch 26/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.4547e-05 - acc: 1.0000 - val_loss: 7.3046e-05 - val_acc: 1.0000\n",
      "Epoch 27/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.2641e-05 - acc: 1.0000 - val_loss: 6.3481e-05 - val_acc: 1.0000\n",
      "Epoch 28/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.3439e-05 - acc: 1.0000 - val_loss: 5.5478e-05 - val_acc: 1.0000\n",
      "Epoch 29/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5823e-05 - acc: 1.0000 - val_loss: 4.9089e-05 - val_acc: 1.0000\n",
      "Epoch 30/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9336e-05 - acc: 1.0000 - val_loss: 4.3767e-05 - val_acc: 1.0000\n",
      "Epoch 31/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4217e-05 - acc: 1.0000 - val_loss: 3.9244e-05 - val_acc: 1.0000\n",
      "Epoch 32/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0020e-05 - acc: 1.0000 - val_loss: 3.5917e-05 - val_acc: 1.0000\n",
      "Epoch 33/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6378e-05 - acc: 1.0000 - val_loss: 3.2567e-05 - val_acc: 1.0000\n",
      "Epoch 34/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3360e-05 - acc: 1.0000 - val_loss: 3.0044e-05 - val_acc: 1.0000\n",
      "Epoch 35/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0665e-05 - acc: 1.0000 - val_loss: 2.8105e-05 - val_acc: 1.0000\n",
      "Epoch 36/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8478e-05 - acc: 1.0000 - val_loss: 2.5892e-05 - val_acc: 1.0000\n",
      "Epoch 37/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6522e-05 - acc: 1.0000 - val_loss: 2.4326e-05 - val_acc: 1.0000\n",
      "Epoch 38/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.4757e-05 - acc: 1.0000 - val_loss: 2.2769e-05 - val_acc: 1.0000\n",
      "Epoch 39/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.3278e-05 - acc: 1.0000 - val_loss: 2.1714e-05 - val_acc: 1.0000\n",
      "Epoch 40/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.1860e-05 - acc: 1.0000 - val_loss: 2.0049e-05 - val_acc: 1.0000\n",
      "Epoch 41/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.0552e-05 - acc: 1.0000 - val_loss: 1.8869e-05 - val_acc: 1.0000\n",
      "Epoch 42/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.9483e-05 - acc: 1.0000 - val_loss: 1.7974e-05 - val_acc: 1.0000\n",
      "Epoch 43/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.8524e-05 - acc: 1.0000 - val_loss: 1.6997e-05 - val_acc: 1.0000\n",
      "Epoch 44/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7560e-05 - acc: 1.0000 - val_loss: 1.6229e-05 - val_acc: 1.0000\n",
      "Epoch 45/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6720e-05 - acc: 1.0000 - val_loss: 1.5441e-05 - val_acc: 1.0000\n",
      "Epoch 46/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5989e-05 - acc: 1.0000 - val_loss: 1.5019e-05 - val_acc: 1.0000\n",
      "Epoch 47/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5331e-05 - acc: 1.0000 - val_loss: 1.4194e-05 - val_acc: 1.0000\n",
      "Epoch 48/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4659e-05 - acc: 1.0000 - val_loss: 1.3676e-05 - val_acc: 1.0000\n",
      "Epoch 49/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4066e-05 - acc: 1.0000 - val_loss: 1.3034e-05 - val_acc: 1.0000\n",
      "Epoch 50/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3507e-05 - acc: 1.0000 - val_loss: 1.2510e-05 - val_acc: 1.0000\n",
      "Epoch 51/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3020e-05 - acc: 1.0000 - val_loss: 1.2076e-05 - val_acc: 1.0000\n",
      "Epoch 52/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2527e-05 - acc: 1.0000 - val_loss: 1.1580e-05 - val_acc: 1.0000\n",
      "Epoch 53/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2083e-05 - acc: 1.0000 - val_loss: 1.1190e-05 - val_acc: 1.0000\n",
      "Epoch 54/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1667e-05 - acc: 1.0000 - val_loss: 1.0866e-05 - val_acc: 1.0000\n",
      "Epoch 55/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1273e-05 - acc: 1.0000 - val_loss: 1.0508e-05 - val_acc: 1.0000\n",
      "Epoch 56/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0915e-05 - acc: 1.0000 - val_loss: 1.0185e-05 - val_acc: 1.0000\n",
      "Epoch 57/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0559e-05 - acc: 1.0000 - val_loss: 9.8179e-06 - val_acc: 1.0000\n",
      "Epoch 58/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0251e-05 - acc: 1.0000 - val_loss: 9.5363e-06 - val_acc: 1.0000\n",
      "Epoch 59/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.9424e-06 - acc: 1.0000 - val_loss: 9.2152e-06 - val_acc: 1.0000\n",
      "Epoch 60/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.6444e-06 - acc: 1.0000 - val_loss: 8.9982e-06 - val_acc: 1.0000\n",
      "Epoch 61/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 9.3731e-06 - acc: 1.0000 - val_loss: 8.7334e-06 - val_acc: 1.0000\n",
      "Epoch 62/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.1250e-06 - acc: 1.0000 - val_loss: 8.5103e-06 - val_acc: 1.0000\n",
      "Epoch 63/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.8561e-06 - acc: 1.0000 - val_loss: 8.2662e-06 - val_acc: 1.0000\n",
      "Epoch 64/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.6372e-06 - acc: 1.0000 - val_loss: 8.0659e-06 - val_acc: 1.0000\n",
      "Epoch 65/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.4174e-06 - acc: 1.0000 - val_loss: 7.8596e-06 - val_acc: 1.0000\n",
      "Epoch 66/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.2049e-06 - acc: 1.0000 - val_loss: 7.7335e-06 - val_acc: 1.0000\n",
      "Epoch 67/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.9914e-06 - acc: 1.0000 - val_loss: 7.5017e-06 - val_acc: 1.0000\n",
      "Epoch 68/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.7955e-06 - acc: 1.0000 - val_loss: 7.2786e-06 - val_acc: 1.0000\n",
      "Epoch 69/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.6069e-06 - acc: 1.0000 - val_loss: 7.1232e-06 - val_acc: 1.0000\n",
      "Epoch 70/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.4299e-06 - acc: 1.0000 - val_loss: 6.9815e-06 - val_acc: 1.0000\n",
      "Epoch 71/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.2660e-06 - acc: 1.0000 - val_loss: 6.8283e-06 - val_acc: 1.0000\n",
      "Epoch 72/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.0992e-06 - acc: 1.0000 - val_loss: 6.6644e-06 - val_acc: 1.0000\n",
      "Epoch 73/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.9467e-06 - acc: 1.0000 - val_loss: 6.5146e-06 - val_acc: 1.0000\n",
      "Epoch 74/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.8030e-06 - acc: 1.0000 - val_loss: 6.4081e-06 - val_acc: 1.0000\n",
      "Epoch 75/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.6506e-06 - acc: 1.0000 - val_loss: 6.2622e-06 - val_acc: 1.0000\n",
      "Epoch 76/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.5132e-06 - acc: 1.0000 - val_loss: 6.1305e-06 - val_acc: 1.0000\n",
      "Epoch 77/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.3875e-06 - acc: 1.0000 - val_loss: 5.9991e-06 - val_acc: 1.0000\n",
      "Epoch 78/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.2597e-06 - acc: 1.0000 - val_loss: 5.8852e-06 - val_acc: 1.0000\n",
      "Epoch 79/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.1331e-06 - acc: 1.0000 - val_loss: 5.7664e-06 - val_acc: 1.0000\n",
      "Epoch 80/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.0137e-06 - acc: 1.0000 - val_loss: 5.6583e-06 - val_acc: 1.0000\n",
      "Epoch 81/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.9107e-06 - acc: 1.0000 - val_loss: 5.5554e-06 - val_acc: 1.0000\n",
      "Epoch 82/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.7929e-06 - acc: 1.0000 - val_loss: 5.4621e-06 - val_acc: 1.0000\n",
      "Epoch 83/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6903e-06 - acc: 1.0000 - val_loss: 5.3531e-06 - val_acc: 1.0000\n",
      "Epoch 84/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5884e-06 - acc: 1.0000 - val_loss: 5.2541e-06 - val_acc: 1.0000\n",
      "Epoch 85/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4907e-06 - acc: 1.0000 - val_loss: 5.1678e-06 - val_acc: 1.0000\n",
      "Epoch 86/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3949e-06 - acc: 1.0000 - val_loss: 5.0632e-06 - val_acc: 1.0000\n",
      "Epoch 87/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2942e-06 - acc: 1.0000 - val_loss: 4.9934e-06 - val_acc: 1.0000\n",
      "Epoch 88/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2073e-06 - acc: 1.0000 - val_loss: 4.9027e-06 - val_acc: 1.0000\n",
      "Epoch 89/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1238e-06 - acc: 1.0000 - val_loss: 4.8301e-06 - val_acc: 1.0000\n",
      "Epoch 90/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0322e-06 - acc: 1.0000 - val_loss: 4.7282e-06 - val_acc: 1.0000\n",
      "Epoch 91/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9503e-06 - acc: 1.0000 - val_loss: 4.6562e-06 - val_acc: 1.0000\n",
      "Epoch 92/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8694e-06 - acc: 1.0000 - val_loss: 4.5880e-06 - val_acc: 1.0000\n",
      "Epoch 93/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7903e-06 - acc: 1.0000 - val_loss: 4.5132e-06 - val_acc: 1.0000\n",
      "Epoch 94/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7174e-06 - acc: 1.0000 - val_loss: 4.4371e-06 - val_acc: 1.0000\n",
      "Epoch 95/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6462e-06 - acc: 1.0000 - val_loss: 4.3852e-06 - val_acc: 1.0000\n",
      "Epoch 96/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5720e-06 - acc: 1.0000 - val_loss: 4.3199e-06 - val_acc: 1.0000\n",
      "Epoch 97/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5031e-06 - acc: 1.0000 - val_loss: 4.2537e-06 - val_acc: 1.0000\n",
      "Epoch 98/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4385e-06 - acc: 1.0000 - val_loss: 4.1849e-06 - val_acc: 1.0000\n",
      "Epoch 99/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3736e-06 - acc: 1.0000 - val_loss: 4.1479e-06 - val_acc: 1.0000\n",
      "Epoch 100/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3086e-06 - acc: 1.0000 - val_loss: 4.0724e-06 - val_acc: 1.0000\n",
      "Epoch 101/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2471e-06 - acc: 1.0000 - val_loss: 4.0129e-06 - val_acc: 1.0000\n",
      "Epoch 102/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1866e-06 - acc: 1.0000 - val_loss: 3.9544e-06 - val_acc: 1.0000\n",
      "Epoch 103/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1291e-06 - acc: 1.0000 - val_loss: 3.9029e-06 - val_acc: 1.0000\n",
      "Epoch 104/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0704e-06 - acc: 1.0000 - val_loss: 3.8517e-06 - val_acc: 1.0000\n",
      "Epoch 105/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0177e-06 - acc: 1.0000 - val_loss: 3.8030e-06 - val_acc: 1.0000\n",
      "Epoch 106/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9640e-06 - acc: 1.0000 - val_loss: 3.7517e-06 - val_acc: 1.0000\n",
      "Epoch 107/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9098e-06 - acc: 1.0000 - val_loss: 3.7046e-06 - val_acc: 1.0000\n",
      "Epoch 108/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8571e-06 - acc: 1.0000 - val_loss: 3.6601e-06 - val_acc: 1.0000\n",
      "Epoch 109/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8062e-06 - acc: 1.0000 - val_loss: 3.6063e-06 - val_acc: 1.0000\n",
      "Epoch 110/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7578e-06 - acc: 1.0000 - val_loss: 3.5581e-06 - val_acc: 1.0000\n",
      "Epoch 111/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7126e-06 - acc: 1.0000 - val_loss: 3.5142e-06 - val_acc: 1.0000\n",
      "Epoch 112/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6651e-06 - acc: 1.0000 - val_loss: 3.4721e-06 - val_acc: 1.0000\n",
      "Epoch 113/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6203e-06 - acc: 1.0000 - val_loss: 3.4272e-06 - val_acc: 1.0000\n",
      "Epoch 114/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5752e-06 - acc: 1.0000 - val_loss: 3.3859e-06 - val_acc: 1.0000\n",
      "Epoch 115/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5343e-06 - acc: 1.0000 - val_loss: 3.3437e-06 - val_acc: 1.0000\n",
      "Epoch 116/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4910e-06 - acc: 1.0000 - val_loss: 3.3091e-06 - val_acc: 1.0000\n",
      "Epoch 117/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4487e-06 - acc: 1.0000 - val_loss: 3.2611e-06 - val_acc: 1.0000\n",
      "Epoch 118/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4076e-06 - acc: 1.0000 - val_loss: 3.2265e-06 - val_acc: 1.0000\n",
      "Epoch 119/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3681e-06 - acc: 1.0000 - val_loss: 3.1917e-06 - val_acc: 1.0000\n",
      "Epoch 120/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3287e-06 - acc: 1.0000 - val_loss: 3.1556e-06 - val_acc: 1.0000\n",
      "Epoch 121/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 3.2907e-06 - acc: 1.0000 - val_loss: 3.1305e-06 - val_acc: 1.0000\n",
      "Epoch 122/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2535e-06 - acc: 1.0000 - val_loss: 3.0899e-06 - val_acc: 1.0000\n",
      "Epoch 123/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2178e-06 - acc: 1.0000 - val_loss: 3.0484e-06 - val_acc: 1.0000\n",
      "Epoch 124/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1800e-06 - acc: 1.0000 - val_loss: 3.0062e-06 - val_acc: 1.0000\n",
      "Epoch 125/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1432e-06 - acc: 1.0000 - val_loss: 2.9763e-06 - val_acc: 1.0000\n",
      "Epoch 126/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1095e-06 - acc: 1.0000 - val_loss: 2.9486e-06 - val_acc: 1.0000\n",
      "Epoch 127/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0749e-06 - acc: 1.0000 - val_loss: 2.9093e-06 - val_acc: 1.0000\n",
      "Epoch 128/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0423e-06 - acc: 1.0000 - val_loss: 2.8749e-06 - val_acc: 1.0000\n",
      "Epoch 129/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0095e-06 - acc: 1.0000 - val_loss: 2.8487e-06 - val_acc: 1.0000\n",
      "Epoch 130/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9783e-06 - acc: 1.0000 - val_loss: 2.8240e-06 - val_acc: 1.0000\n",
      "Epoch 131/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9474e-06 - acc: 1.0000 - val_loss: 2.7880e-06 - val_acc: 1.0000\n",
      "Epoch 132/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9172e-06 - acc: 1.0000 - val_loss: 2.7567e-06 - val_acc: 1.0000\n",
      "Epoch 133/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8878e-06 - acc: 1.0000 - val_loss: 2.7331e-06 - val_acc: 1.0000\n",
      "Epoch 134/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8570e-06 - acc: 1.0000 - val_loss: 2.7066e-06 - val_acc: 1.0000\n",
      "Epoch 135/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8285e-06 - acc: 1.0000 - val_loss: 2.6779e-06 - val_acc: 1.0000\n",
      "Epoch 136/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8006e-06 - acc: 1.0000 - val_loss: 2.6521e-06 - val_acc: 1.0000\n",
      "Epoch 137/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7756e-06 - acc: 1.0000 - val_loss: 2.6380e-06 - val_acc: 1.0000\n",
      "Epoch 138/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7473e-06 - acc: 1.0000 - val_loss: 2.6109e-06 - val_acc: 1.0000\n",
      "Epoch 139/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7209e-06 - acc: 1.0000 - val_loss: 2.5838e-06 - val_acc: 1.0000\n",
      "Epoch 140/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6952e-06 - acc: 1.0000 - val_loss: 2.5584e-06 - val_acc: 1.0000\n",
      "Epoch 141/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6674e-06 - acc: 1.0000 - val_loss: 2.5275e-06 - val_acc: 1.0000\n",
      "Epoch 142/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6411e-06 - acc: 1.0000 - val_loss: 2.5033e-06 - val_acc: 1.0000\n",
      "Epoch 143/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6170e-06 - acc: 1.0000 - val_loss: 2.4832e-06 - val_acc: 1.0000\n",
      "Epoch 144/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.5905e-06 - acc: 1.0000 - val_loss: 2.4567e-06 - val_acc: 1.0000\n",
      "Epoch 145/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.5663e-06 - acc: 1.0000 - val_loss: 2.4344e-06 - val_acc: 1.0000\n",
      "Epoch 146/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.5441e-06 - acc: 1.0000 - val_loss: 2.4149e-06 - val_acc: 1.0000\n",
      "Epoch 147/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 2.5393e-06 - acc: 1.000 - 0s - loss: 2.5202e-06 - acc: 1.0000 - val_loss: 2.3957e-06 - val_acc: 1.0000\n",
      "Epoch 148/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.4987e-06 - acc: 1.0000 - val_loss: 2.3754e-06 - val_acc: 1.0000\n",
      "Epoch 149/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.4767e-06 - acc: 1.0000 - val_loss: 2.3520e-06 - val_acc: 1.0000\n",
      "Epoch 150/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.4551e-06 - acc: 1.0000 - val_loss: 2.3318e-06 - val_acc: 1.0000\n",
      "Epoch 151/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.4330e-06 - acc: 1.0000 - val_loss: 2.3120e-06 - val_acc: 1.0000\n",
      "Epoch 152/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.4116e-06 - acc: 1.0000 - val_loss: 2.2895e-06 - val_acc: 1.0000\n",
      "Epoch 153/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.3900e-06 - acc: 1.0000 - val_loss: 2.2637e-06 - val_acc: 1.0000\n",
      "Epoch 154/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.3687e-06 - acc: 1.0000 - val_loss: 2.2454e-06 - val_acc: 1.0000\n",
      "Epoch 155/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.3465e-06 - acc: 1.0000 - val_loss: 2.2274e-06 - val_acc: 1.0000\n",
      "Epoch 156/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.3262e-06 - acc: 1.0000 - val_loss: 2.2089e-06 - val_acc: 1.0000\n",
      "Epoch 157/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.3070e-06 - acc: 1.0000 - val_loss: 2.1947e-06 - val_acc: 1.0000\n",
      "Epoch 158/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.2880e-06 - acc: 1.0000 - val_loss: 2.1759e-06 - val_acc: 1.0000\n",
      "Epoch 159/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.2694e-06 - acc: 1.0000 - val_loss: 2.1604e-06 - val_acc: 1.0000\n",
      "Epoch 160/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.2515e-06 - acc: 1.0000 - val_loss: 2.1401e-06 - val_acc: 1.0000\n",
      "Epoch 161/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.2340e-06 - acc: 1.0000 - val_loss: 2.1235e-06 - val_acc: 1.0000\n",
      "Epoch 162/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.2167e-06 - acc: 1.0000 - val_loss: 2.1049e-06 - val_acc: 1.0000\n",
      "Epoch 163/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.2002e-06 - acc: 1.0000 - val_loss: 2.0886e-06 - val_acc: 1.0000\n",
      "Epoch 164/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.1812e-06 - acc: 1.0000 - val_loss: 2.0729e-06 - val_acc: 1.0000\n",
      "Epoch 165/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.1639e-06 - acc: 1.0000 - val_loss: 2.0556e-06 - val_acc: 1.0000\n",
      "Epoch 166/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.1468e-06 - acc: 1.0000 - val_loss: 2.0402e-06 - val_acc: 1.0000\n",
      "Epoch 167/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.1292e-06 - acc: 1.0000 - val_loss: 2.0262e-06 - val_acc: 1.0000\n",
      "Epoch 168/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.1122e-06 - acc: 1.0000 - val_loss: 2.0093e-06 - val_acc: 1.0000\n",
      "Epoch 169/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.0959e-06 - acc: 1.0000 - val_loss: 1.9928e-06 - val_acc: 1.0000\n",
      "Epoch 170/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.0788e-06 - acc: 1.0000 - val_loss: 1.9770e-06 - val_acc: 1.0000\n",
      "Epoch 171/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.0634e-06 - acc: 1.0000 - val_loss: 1.9647e-06 - val_acc: 1.0000\n",
      "Epoch 172/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.0475e-06 - acc: 1.0000 - val_loss: 1.9465e-06 - val_acc: 1.0000\n",
      "Epoch 173/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.0311e-06 - acc: 1.0000 - val_loss: 1.9315e-06 - val_acc: 1.0000\n",
      "Epoch 174/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.0169e-06 - acc: 1.0000 - val_loss: 1.9180e-06 - val_acc: 1.0000\n",
      "Epoch 175/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.0020e-06 - acc: 1.0000 - val_loss: 1.9032e-06 - val_acc: 1.0000\n",
      "Epoch 176/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.9891e-06 - acc: 1.0000 - val_loss: 1.8910e-06 - val_acc: 1.0000\n",
      "Epoch 177/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.9738e-06 - acc: 1.0000 - val_loss: 1.8773e-06 - val_acc: 1.0000\n",
      "Epoch 178/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.9597e-06 - acc: 1.0000 - val_loss: 1.8619e-06 - val_acc: 1.0000\n",
      "Epoch 179/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.9457e-06 - acc: 1.0000 - val_loss: 1.8525e-06 - val_acc: 1.0000\n",
      "Epoch 180/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 1.9318e-06 - acc: 1.0000 - val_loss: 1.8375e-06 - val_acc: 1.0000\n",
      "Epoch 181/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.9182e-06 - acc: 1.0000 - val_loss: 1.8255e-06 - val_acc: 1.0000\n",
      "Epoch 182/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.9035e-06 - acc: 1.0000 - val_loss: 1.8106e-06 - val_acc: 1.0000\n",
      "Epoch 183/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.8895e-06 - acc: 1.0000 - val_loss: 1.7984e-06 - val_acc: 1.0000\n",
      "Epoch 184/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.8771e-06 - acc: 1.0000 - val_loss: 1.7856e-06 - val_acc: 1.0000\n",
      "Epoch 185/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.8625e-06 - acc: 1.0000 - val_loss: 1.7735e-06 - val_acc: 1.0000\n",
      "Epoch 186/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.8485e-06 - acc: 1.0000 - val_loss: 1.7612e-06 - val_acc: 1.0000\n",
      "Epoch 187/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.8356e-06 - acc: 1.0000 - val_loss: 1.7490e-06 - val_acc: 1.0000\n",
      "Epoch 188/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.8224e-06 - acc: 1.0000 - val_loss: 1.7374e-06 - val_acc: 1.0000\n",
      "Epoch 189/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.8104e-06 - acc: 1.0000 - val_loss: 1.7293e-06 - val_acc: 1.0000\n",
      "Epoch 190/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7981e-06 - acc: 1.0000 - val_loss: 1.7180e-06 - val_acc: 1.0000\n",
      "Epoch 191/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7858e-06 - acc: 1.0000 - val_loss: 1.7050e-06 - val_acc: 1.0000\n",
      "Epoch 192/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7739e-06 - acc: 1.0000 - val_loss: 1.6943e-06 - val_acc: 1.0000\n",
      "Epoch 193/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7630e-06 - acc: 1.0000 - val_loss: 1.6825e-06 - val_acc: 1.0000\n",
      "Epoch 194/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7520e-06 - acc: 1.0000 - val_loss: 1.6683e-06 - val_acc: 1.0000\n",
      "Epoch 195/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7410e-06 - acc: 1.0000 - val_loss: 1.6572e-06 - val_acc: 1.0000\n",
      "Epoch 196/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7295e-06 - acc: 1.0000 - val_loss: 1.6475e-06 - val_acc: 1.0000\n",
      "Epoch 197/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7191e-06 - acc: 1.0000 - val_loss: 1.6394e-06 - val_acc: 1.0000\n",
      "Epoch 198/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.7083e-06 - acc: 1.0000 - val_loss: 1.6294e-06 - val_acc: 1.0000\n",
      "Epoch 199/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6968e-06 - acc: 1.0000 - val_loss: 1.6195e-06 - val_acc: 1.0000\n",
      "Epoch 200/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6859e-06 - acc: 1.0000 - val_loss: 1.6085e-06 - val_acc: 1.0000\n",
      "Epoch 201/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6746e-06 - acc: 1.0000 - val_loss: 1.5986e-06 - val_acc: 1.0000\n",
      "Epoch 202/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6643e-06 - acc: 1.0000 - val_loss: 1.5870e-06 - val_acc: 1.0000\n",
      "Epoch 203/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6536e-06 - acc: 1.0000 - val_loss: 1.5777e-06 - val_acc: 1.0000\n",
      "Epoch 204/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6440e-06 - acc: 1.0000 - val_loss: 1.5638e-06 - val_acc: 1.0000\n",
      "Epoch 205/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6331e-06 - acc: 1.0000 - val_loss: 1.5543e-06 - val_acc: 1.0000\n",
      "Epoch 206/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 2.5444e-06 - acc: 1.000 - 0s - loss: 1.6231e-06 - acc: 1.0000 - val_loss: 1.5456e-06 - val_acc: 1.0000\n",
      "Epoch 207/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6126e-06 - acc: 1.0000 - val_loss: 1.5369e-06 - val_acc: 1.0000\n",
      "Epoch 208/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.6020e-06 - acc: 1.0000 - val_loss: 1.5255e-06 - val_acc: 1.0000\n",
      "Epoch 209/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5921e-06 - acc: 1.0000 - val_loss: 1.5168e-06 - val_acc: 1.0000\n",
      "Epoch 210/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5817e-06 - acc: 1.0000 - val_loss: 1.5090e-06 - val_acc: 1.0000\n",
      "Epoch 211/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5724e-06 - acc: 1.0000 - val_loss: 1.4994e-06 - val_acc: 1.0000\n",
      "Epoch 212/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5634e-06 - acc: 1.0000 - val_loss: 1.4906e-06 - val_acc: 1.0000\n",
      "Epoch 213/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5532e-06 - acc: 1.0000 - val_loss: 1.4829e-06 - val_acc: 1.0000\n",
      "Epoch 214/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5436e-06 - acc: 1.0000 - val_loss: 1.4733e-06 - val_acc: 1.0000\n",
      "Epoch 215/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5349e-06 - acc: 1.0000 - val_loss: 1.4650e-06 - val_acc: 1.0000\n",
      "Epoch 216/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5268e-06 - acc: 1.0000 - val_loss: 1.4531e-06 - val_acc: 1.0000\n",
      "Epoch 217/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5167e-06 - acc: 1.0000 - val_loss: 1.4451e-06 - val_acc: 1.0000\n",
      "Epoch 218/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5085e-06 - acc: 1.0000 - val_loss: 1.4381e-06 - val_acc: 1.0000\n",
      "Epoch 219/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.5004e-06 - acc: 1.0000 - val_loss: 1.4300e-06 - val_acc: 1.0000\n",
      "Epoch 220/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4921e-06 - acc: 1.0000 - val_loss: 1.4201e-06 - val_acc: 1.0000\n",
      "Epoch 221/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4839e-06 - acc: 1.0000 - val_loss: 1.4138e-06 - val_acc: 1.0000\n",
      "Epoch 222/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4756e-06 - acc: 1.0000 - val_loss: 1.4062e-06 - val_acc: 1.0000\n",
      "Epoch 223/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4675e-06 - acc: 1.0000 - val_loss: 1.3998e-06 - val_acc: 1.0000\n",
      "Epoch 224/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4601e-06 - acc: 1.0000 - val_loss: 1.3927e-06 - val_acc: 1.0000\n",
      "Epoch 225/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4517e-06 - acc: 1.0000 - val_loss: 1.3849e-06 - val_acc: 1.0000\n",
      "Epoch 226/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4445e-06 - acc: 1.0000 - val_loss: 1.3784e-06 - val_acc: 1.0000\n",
      "Epoch 227/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4367e-06 - acc: 1.0000 - val_loss: 1.3707e-06 - val_acc: 1.0000\n",
      "Epoch 228/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4281e-06 - acc: 1.0000 - val_loss: 1.3635e-06 - val_acc: 1.0000\n",
      "Epoch 229/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4197e-06 - acc: 1.0000 - val_loss: 1.3568e-06 - val_acc: 1.0000\n",
      "Epoch 230/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4114e-06 - acc: 1.0000 - val_loss: 1.3494e-06 - val_acc: 1.0000\n",
      "Epoch 231/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.4035e-06 - acc: 1.0000 - val_loss: 1.3413e-06 - val_acc: 1.0000\n",
      "Epoch 232/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3961e-06 - acc: 1.0000 - val_loss: 1.3332e-06 - val_acc: 1.0000\n",
      "Epoch 233/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3887e-06 - acc: 1.0000 - val_loss: 1.3235e-06 - val_acc: 1.0000\n",
      "Epoch 234/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3812e-06 - acc: 1.0000 - val_loss: 1.3167e-06 - val_acc: 1.0000\n",
      "Epoch 235/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3725e-06 - acc: 1.0000 - val_loss: 1.3089e-06 - val_acc: 1.0000\n",
      "Epoch 236/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3647e-06 - acc: 1.0000 - val_loss: 1.3030e-06 - val_acc: 1.0000\n",
      "Epoch 237/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3571e-06 - acc: 1.0000 - val_loss: 1.2957e-06 - val_acc: 1.0000\n",
      "Epoch 238/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3507e-06 - acc: 1.0000 - val_loss: 1.2877e-06 - val_acc: 1.0000\n",
      "Epoch 239/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 1.3437e-06 - acc: 1.0000 - val_loss: 1.2812e-06 - val_acc: 1.0000\n",
      "Epoch 240/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3358e-06 - acc: 1.0000 - val_loss: 1.2743e-06 - val_acc: 1.0000\n",
      "Epoch 241/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3290e-06 - acc: 1.0000 - val_loss: 1.2698e-06 - val_acc: 1.0000\n",
      "Epoch 242/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3215e-06 - acc: 1.0000 - val_loss: 1.2636e-06 - val_acc: 1.0000\n",
      "Epoch 243/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3149e-06 - acc: 1.0000 - val_loss: 1.2580e-06 - val_acc: 1.0000\n",
      "Epoch 244/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3080e-06 - acc: 1.0000 - val_loss: 1.2523e-06 - val_acc: 1.0000\n",
      "Epoch 245/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.3017e-06 - acc: 1.0000 - val_loss: 1.2466e-06 - val_acc: 1.0000\n",
      "Epoch 246/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2952e-06 - acc: 1.0000 - val_loss: 1.2403e-06 - val_acc: 1.0000\n",
      "Epoch 247/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2890e-06 - acc: 1.0000 - val_loss: 1.2359e-06 - val_acc: 1.0000\n",
      "Epoch 248/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2829e-06 - acc: 1.0000 - val_loss: 1.2287e-06 - val_acc: 1.0000\n",
      "Epoch 249/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2767e-06 - acc: 1.0000 - val_loss: 1.2229e-06 - val_acc: 1.0000\n",
      "Epoch 250/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2701e-06 - acc: 1.0000 - val_loss: 1.2165e-06 - val_acc: 1.0000\n",
      "Epoch 251/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2642e-06 - acc: 1.0000 - val_loss: 1.2117e-06 - val_acc: 1.0000\n",
      "Epoch 252/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2591e-06 - acc: 1.0000 - val_loss: 1.2058e-06 - val_acc: 1.0000\n",
      "Epoch 253/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2523e-06 - acc: 1.0000 - val_loss: 1.1994e-06 - val_acc: 1.0000\n",
      "Epoch 254/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2465e-06 - acc: 1.0000 - val_loss: 1.1929e-06 - val_acc: 1.0000\n",
      "Epoch 255/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2403e-06 - acc: 1.0000 - val_loss: 1.1869e-06 - val_acc: 1.0000\n",
      "Epoch 256/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2345e-06 - acc: 1.0000 - val_loss: 1.1817e-06 - val_acc: 1.0000\n",
      "Epoch 257/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2283e-06 - acc: 1.0000 - val_loss: 1.1771e-06 - val_acc: 1.0000\n",
      "Epoch 258/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2226e-06 - acc: 1.0000 - val_loss: 1.1719e-06 - val_acc: 1.0000\n",
      "Epoch 259/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2169e-06 - acc: 1.0000 - val_loss: 1.1640e-06 - val_acc: 1.0000\n",
      "Epoch 260/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2112e-06 - acc: 1.0000 - val_loss: 1.1581e-06 - val_acc: 1.0000\n",
      "Epoch 261/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.2053e-06 - acc: 1.0000 - val_loss: 1.1533e-06 - val_acc: 1.0000\n",
      "Epoch 262/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1990e-06 - acc: 1.0000 - val_loss: 1.1475e-06 - val_acc: 1.0000\n",
      "Epoch 263/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1931e-06 - acc: 1.0000 - val_loss: 1.1417e-06 - val_acc: 1.0000\n",
      "Epoch 264/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1873e-06 - acc: 1.0000 - val_loss: 1.1359e-06 - val_acc: 1.0000\n",
      "Epoch 265/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1808e-06 - acc: 1.0000 - val_loss: 1.1314e-06 - val_acc: 1.0000\n",
      "Epoch 266/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1751e-06 - acc: 1.0000 - val_loss: 1.1273e-06 - val_acc: 1.0000\n",
      "Epoch 267/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1696e-06 - acc: 1.0000 - val_loss: 1.1217e-06 - val_acc: 1.0000\n",
      "Epoch 268/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1646e-06 - acc: 1.0000 - val_loss: 1.1163e-06 - val_acc: 1.0000\n",
      "Epoch 269/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1599e-06 - acc: 1.0000 - val_loss: 1.1108e-06 - val_acc: 1.0000\n",
      "Epoch 270/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1539e-06 - acc: 1.0000 - val_loss: 1.1042e-06 - val_acc: 1.0000\n",
      "Epoch 271/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1487e-06 - acc: 1.0000 - val_loss: 1.1002e-06 - val_acc: 1.0000\n",
      "Epoch 272/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1433e-06 - acc: 1.0000 - val_loss: 1.0946e-06 - val_acc: 1.0000\n",
      "Epoch 273/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1380e-06 - acc: 1.0000 - val_loss: 1.0899e-06 - val_acc: 1.0000\n",
      "Epoch 274/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1321e-06 - acc: 1.0000 - val_loss: 1.0857e-06 - val_acc: 1.0000\n",
      "Epoch 275/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1272e-06 - acc: 1.0000 - val_loss: 1.0787e-06 - val_acc: 1.0000\n",
      "Epoch 276/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1236e-06 - acc: 1.0000 - val_loss: 1.0743e-06 - val_acc: 1.0000\n",
      "Epoch 277/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1185e-06 - acc: 1.0000 - val_loss: 1.0689e-06 - val_acc: 1.0000\n",
      "Epoch 278/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1134e-06 - acc: 1.0000 - val_loss: 1.0643e-06 - val_acc: 1.0000\n",
      "Epoch 279/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1081e-06 - acc: 1.0000 - val_loss: 1.0589e-06 - val_acc: 1.0000\n",
      "Epoch 280/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.1028e-06 - acc: 1.0000 - val_loss: 1.0549e-06 - val_acc: 1.0000\n",
      "Epoch 281/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0979e-06 - acc: 1.0000 - val_loss: 1.0493e-06 - val_acc: 1.0000\n",
      "Epoch 282/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0927e-06 - acc: 1.0000 - val_loss: 1.0445e-06 - val_acc: 1.0000\n",
      "Epoch 283/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0877e-06 - acc: 1.0000 - val_loss: 1.0394e-06 - val_acc: 1.0000\n",
      "Epoch 284/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0831e-06 - acc: 1.0000 - val_loss: 1.0348e-06 - val_acc: 1.0000\n",
      "Epoch 285/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0786e-06 - acc: 1.0000 - val_loss: 1.0309e-06 - val_acc: 1.0000\n",
      "Epoch 286/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0738e-06 - acc: 1.0000 - val_loss: 1.0269e-06 - val_acc: 1.0000\n",
      "Epoch 287/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0690e-06 - acc: 1.0000 - val_loss: 1.0223e-06 - val_acc: 1.0000\n",
      "Epoch 288/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0645e-06 - acc: 1.0000 - val_loss: 1.0185e-06 - val_acc: 1.0000\n",
      "Epoch 289/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0601e-06 - acc: 1.0000 - val_loss: 1.0150e-06 - val_acc: 1.0000\n",
      "Epoch 290/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0554e-06 - acc: 1.0000 - val_loss: 1.0101e-06 - val_acc: 1.0000\n",
      "Epoch 291/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0509e-06 - acc: 1.0000 - val_loss: 1.0064e-06 - val_acc: 1.0000\n",
      "Epoch 292/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0463e-06 - acc: 1.0000 - val_loss: 1.0034e-06 - val_acc: 1.0000\n",
      "Epoch 293/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0420e-06 - acc: 1.0000 - val_loss: 9.9889e-07 - val_acc: 1.0000\n",
      "Epoch 294/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0380e-06 - acc: 1.0000 - val_loss: 9.9430e-07 - val_acc: 1.0000\n",
      "Epoch 295/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0334e-06 - acc: 1.0000 - val_loss: 9.9164e-07 - val_acc: 1.0000\n",
      "Epoch 296/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0297e-06 - acc: 1.0000 - val_loss: 9.8862e-07 - val_acc: 1.0000\n",
      "Epoch 297/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0257e-06 - acc: 1.0000 - val_loss: 9.8378e-07 - val_acc: 1.0000\n",
      "Epoch 298/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 1.0216e-06 - acc: 1.0000 - val_loss: 9.8028e-07 - val_acc: 1.0000\n",
      "Epoch 299/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0177e-06 - acc: 1.0000 - val_loss: 9.7520e-07 - val_acc: 1.0000\n",
      "Epoch 300/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0140e-06 - acc: 1.0000 - val_loss: 9.7217e-07 - val_acc: 1.0000\n",
      "Epoch 301/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0103e-06 - acc: 1.0000 - val_loss: 9.6903e-07 - val_acc: 1.0000\n",
      "Epoch 302/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0057e-06 - acc: 1.0000 - val_loss: 9.6528e-07 - val_acc: 1.0000\n",
      "Epoch 303/1000\n",
      "1969/1969 [==============================] - 0s - loss: 1.0020e-06 - acc: 1.0000 - val_loss: 9.6117e-07 - val_acc: 1.0000\n",
      "Epoch 304/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.9797e-07 - acc: 1.0000 - val_loss: 9.5706e-07 - val_acc: 1.0000\n",
      "Epoch 305/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.9361e-07 - acc: 1.0000 - val_loss: 9.5380e-07 - val_acc: 1.0000\n",
      "Epoch 306/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.9046e-07 - acc: 1.0000 - val_loss: 9.4981e-07 - val_acc: 1.0000\n",
      "Epoch 307/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.8655e-07 - acc: 1.0000 - val_loss: 9.4630e-07 - val_acc: 1.0000\n",
      "Epoch 308/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.8280e-07 - acc: 1.0000 - val_loss: 9.4280e-07 - val_acc: 1.0000\n",
      "Epoch 309/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.7914e-07 - acc: 1.0000 - val_loss: 9.3917e-07 - val_acc: 1.0000\n",
      "Epoch 310/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.7575e-07 - acc: 1.0000 - val_loss: 9.3506e-07 - val_acc: 1.0000\n",
      "Epoch 311/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.7239e-07 - acc: 1.0000 - val_loss: 9.3155e-07 - val_acc: 1.0000\n",
      "Epoch 312/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.6778e-07 - acc: 1.0000 - val_loss: 9.2744e-07 - val_acc: 1.0000\n",
      "Epoch 313/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.6418e-07 - acc: 1.0000 - val_loss: 9.2224e-07 - val_acc: 1.0000\n",
      "Epoch 314/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.6058e-07 - acc: 1.0000 - val_loss: 9.1922e-07 - val_acc: 1.0000\n",
      "Epoch 315/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.5664e-07 - acc: 1.0000 - val_loss: 9.1559e-07 - val_acc: 1.0000\n",
      "Epoch 316/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.5280e-07 - acc: 1.0000 - val_loss: 9.1233e-07 - val_acc: 1.0000\n",
      "Epoch 317/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.4920e-07 - acc: 1.0000 - val_loss: 9.0810e-07 - val_acc: 1.0000\n",
      "Epoch 318/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.4487e-07 - acc: 1.0000 - val_loss: 9.0447e-07 - val_acc: 1.0000\n",
      "Epoch 319/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.4151e-07 - acc: 1.0000 - val_loss: 9.0157e-07 - val_acc: 1.0000\n",
      "Epoch 320/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.3712e-07 - acc: 1.0000 - val_loss: 8.9722e-07 - val_acc: 1.0000\n",
      "Epoch 321/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.3352e-07 - acc: 1.0000 - val_loss: 8.9395e-07 - val_acc: 1.0000\n",
      "Epoch 322/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.2943e-07 - acc: 1.0000 - val_loss: 8.8960e-07 - val_acc: 1.0000\n",
      "Epoch 323/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.2549e-07 - acc: 1.0000 - val_loss: 8.8778e-07 - val_acc: 1.0000\n",
      "Epoch 324/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.2174e-07 - acc: 1.0000 - val_loss: 8.8380e-07 - val_acc: 1.0000\n",
      "Epoch 325/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.1778e-07 - acc: 1.0000 - val_loss: 8.7981e-07 - val_acc: 1.0000\n",
      "Epoch 326/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.1384e-07 - acc: 1.0000 - val_loss: 8.7751e-07 - val_acc: 1.0000\n",
      "Epoch 327/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.1018e-07 - acc: 1.0000 - val_loss: 8.7255e-07 - val_acc: 1.0000\n",
      "Epoch 328/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.0612e-07 - acc: 1.0000 - val_loss: 8.6965e-07 - val_acc: 1.0000\n",
      "Epoch 329/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.0276e-07 - acc: 1.0000 - val_loss: 8.6639e-07 - val_acc: 1.0000\n",
      "Epoch 330/1000\n",
      "1969/1969 [==============================] - 0s - loss: 9.0013e-07 - acc: 1.0000 - val_loss: 8.6348e-07 - val_acc: 1.0000\n",
      "Epoch 331/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.9662e-07 - acc: 1.0000 - val_loss: 8.5889e-07 - val_acc: 1.0000\n",
      "Epoch 332/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.9320e-07 - acc: 1.0000 - val_loss: 8.5635e-07 - val_acc: 1.0000\n",
      "Epoch 333/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.8944e-07 - acc: 1.0000 - val_loss: 8.5164e-07 - val_acc: 1.0000\n",
      "Epoch 334/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.8569e-07 - acc: 1.0000 - val_loss: 8.4934e-07 - val_acc: 1.0000\n",
      "Epoch 335/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.8248e-07 - acc: 1.0000 - val_loss: 8.4668e-07 - val_acc: 1.0000\n",
      "Epoch 336/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.7882e-07 - acc: 1.0000 - val_loss: 8.4293e-07 - val_acc: 1.0000\n",
      "Epoch 337/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.7618e-07 - acc: 1.0000 - val_loss: 8.4015e-07 - val_acc: 1.0000\n",
      "Epoch 338/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.7258e-07 - acc: 1.0000 - val_loss: 8.3676e-07 - val_acc: 1.0000\n",
      "Epoch 339/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.6889e-07 - acc: 1.0000 - val_loss: 8.3290e-07 - val_acc: 1.0000\n",
      "Epoch 340/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.6556e-07 - acc: 1.0000 - val_loss: 8.2951e-07 - val_acc: 1.0000\n",
      "Epoch 341/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.6247e-07 - acc: 1.0000 - val_loss: 8.2649e-07 - val_acc: 1.0000\n",
      "Epoch 342/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.5902e-07 - acc: 1.0000 - val_loss: 8.2419e-07 - val_acc: 1.0000\n",
      "Epoch 343/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.5602e-07 - acc: 1.0000 - val_loss: 8.2189e-07 - val_acc: 1.0000\n",
      "Epoch 344/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.5333e-07 - acc: 1.0000 - val_loss: 8.1887e-07 - val_acc: 1.0000\n",
      "Epoch 345/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.5009e-07 - acc: 1.0000 - val_loss: 8.1549e-07 - val_acc: 1.0000\n",
      "Epoch 346/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.4688e-07 - acc: 1.0000 - val_loss: 8.1270e-07 - val_acc: 1.0000\n",
      "Epoch 347/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.4419e-07 - acc: 1.0000 - val_loss: 8.1004e-07 - val_acc: 1.0000\n",
      "Epoch 348/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.4128e-07 - acc: 1.0000 - val_loss: 8.0714e-07 - val_acc: 1.0000\n",
      "Epoch 349/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.3862e-07 - acc: 1.0000 - val_loss: 8.0376e-07 - val_acc: 1.0000\n",
      "Epoch 350/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.3586e-07 - acc: 1.0000 - val_loss: 8.0049e-07 - val_acc: 1.0000\n",
      "Epoch 351/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.3271e-07 - acc: 1.0000 - val_loss: 7.9747e-07 - val_acc: 1.0000\n",
      "Epoch 352/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.3050e-07 - acc: 1.0000 - val_loss: 7.9457e-07 - val_acc: 1.0000\n",
      "Epoch 353/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.2757e-07 - acc: 1.0000 - val_loss: 7.9288e-07 - val_acc: 1.0000\n",
      "Epoch 354/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.2481e-07 - acc: 1.0000 - val_loss: 7.8985e-07 - val_acc: 1.0000\n",
      "Epoch 355/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.2181e-07 - acc: 1.0000 - val_loss: 7.8756e-07 - val_acc: 1.0000\n",
      "Epoch 356/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.1982e-07 - acc: 1.0000 - val_loss: 7.8562e-07 - val_acc: 1.0000\n",
      "Epoch 357/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 8.1679e-07 - acc: 1.0000 - val_loss: 7.8320e-07 - val_acc: 1.0000\n",
      "Epoch 358/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.1391e-07 - acc: 1.0000 - val_loss: 7.8054e-07 - val_acc: 1.0000\n",
      "Epoch 359/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.1152e-07 - acc: 1.0000 - val_loss: 7.7849e-07 - val_acc: 1.0000\n",
      "Epoch 360/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.0871e-07 - acc: 1.0000 - val_loss: 7.7643e-07 - val_acc: 1.0000\n",
      "Epoch 361/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.0622e-07 - acc: 1.0000 - val_loss: 7.7474e-07 - val_acc: 1.0000\n",
      "Epoch 362/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.0386e-07 - acc: 1.0000 - val_loss: 7.7281e-07 - val_acc: 1.0000\n",
      "Epoch 363/1000\n",
      "1969/1969 [==============================] - 0s - loss: 8.0187e-07 - acc: 1.0000 - val_loss: 7.7027e-07 - val_acc: 1.0000\n",
      "Epoch 364/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.9929e-07 - acc: 1.0000 - val_loss: 7.6749e-07 - val_acc: 1.0000\n",
      "Epoch 365/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.9663e-07 - acc: 1.0000 - val_loss: 7.6459e-07 - val_acc: 1.0000\n",
      "Epoch 366/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.9496e-07 - acc: 1.0000 - val_loss: 7.6289e-07 - val_acc: 1.0000\n",
      "Epoch 367/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.9254e-07 - acc: 1.0000 - val_loss: 7.6084e-07 - val_acc: 1.0000\n",
      "Epoch 368/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.8967e-07 - acc: 1.0000 - val_loss: 7.5806e-07 - val_acc: 1.0000\n",
      "Epoch 369/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.8761e-07 - acc: 1.0000 - val_loss: 7.5528e-07 - val_acc: 1.0000\n",
      "Epoch 370/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.8543e-07 - acc: 1.0000 - val_loss: 7.5334e-07 - val_acc: 1.0000\n",
      "Epoch 371/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.8310e-07 - acc: 1.0000 - val_loss: 7.5117e-07 - val_acc: 1.0000\n",
      "Epoch 372/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.8055e-07 - acc: 1.0000 - val_loss: 7.4863e-07 - val_acc: 1.0000\n",
      "Epoch 373/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.7786e-07 - acc: 1.0000 - val_loss: 7.4742e-07 - val_acc: 1.0000\n",
      "Epoch 374/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.7583e-07 - acc: 1.0000 - val_loss: 7.4439e-07 - val_acc: 1.0000\n",
      "Epoch 375/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.7326e-07 - acc: 1.0000 - val_loss: 7.4186e-07 - val_acc: 1.0000\n",
      "Epoch 376/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.7120e-07 - acc: 1.0000 - val_loss: 7.4053e-07 - val_acc: 1.0000\n",
      "Epoch 377/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.6872e-07 - acc: 1.0000 - val_loss: 7.3883e-07 - val_acc: 1.0000\n",
      "Epoch 378/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 5.0152e-07 - acc: 1.000 - 0s - loss: 7.6639e-07 - acc: 1.0000 - val_loss: 7.3593e-07 - val_acc: 1.0000\n",
      "Epoch 379/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.6442e-07 - acc: 1.0000 - val_loss: 7.3363e-07 - val_acc: 1.0000\n",
      "Epoch 380/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.6182e-07 - acc: 1.0000 - val_loss: 7.3122e-07 - val_acc: 1.0000\n",
      "Epoch 381/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.5906e-07 - acc: 1.0000 - val_loss: 7.2964e-07 - val_acc: 1.0000\n",
      "Epoch 382/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.5664e-07 - acc: 1.0000 - val_loss: 7.2711e-07 - val_acc: 1.0000\n",
      "Epoch 383/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.5503e-07 - acc: 1.0000 - val_loss: 7.2469e-07 - val_acc: 1.0000\n",
      "Epoch 384/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.5216e-07 - acc: 1.0000 - val_loss: 7.2324e-07 - val_acc: 1.0000\n",
      "Epoch 385/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.5019e-07 - acc: 1.0000 - val_loss: 7.2166e-07 - val_acc: 1.0000\n",
      "Epoch 386/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.4804e-07 - acc: 1.0000 - val_loss: 7.1876e-07 - val_acc: 1.0000\n",
      "Epoch 387/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.4544e-07 - acc: 1.0000 - val_loss: 7.1647e-07 - val_acc: 1.0000\n",
      "Epoch 388/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.4274e-07 - acc: 1.0000 - val_loss: 7.1356e-07 - val_acc: 1.0000\n",
      "Epoch 389/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.4053e-07 - acc: 1.0000 - val_loss: 7.1187e-07 - val_acc: 1.0000\n",
      "Epoch 390/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.3820e-07 - acc: 1.0000 - val_loss: 7.0933e-07 - val_acc: 1.0000\n",
      "Epoch 391/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.3569e-07 - acc: 1.0000 - val_loss: 7.0631e-07 - val_acc: 1.0000\n",
      "Epoch 392/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.3342e-07 - acc: 1.0000 - val_loss: 7.0486e-07 - val_acc: 1.0000\n",
      "Epoch 393/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.3148e-07 - acc: 1.0000 - val_loss: 7.0293e-07 - val_acc: 1.0000\n",
      "Epoch 394/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.2897e-07 - acc: 1.0000 - val_loss: 7.0099e-07 - val_acc: 1.0000\n",
      "Epoch 395/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.2709e-07 - acc: 1.0000 - val_loss: 6.9845e-07 - val_acc: 1.0000\n",
      "Epoch 396/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.2522e-07 - acc: 1.0000 - val_loss: 6.9688e-07 - val_acc: 1.0000\n",
      "Epoch 397/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.2289e-07 - acc: 1.0000 - val_loss: 6.9470e-07 - val_acc: 1.0000\n",
      "Epoch 398/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.2107e-07 - acc: 1.0000 - val_loss: 6.9229e-07 - val_acc: 1.0000\n",
      "Epoch 399/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.1847e-07 - acc: 1.0000 - val_loss: 6.9023e-07 - val_acc: 1.0000\n",
      "Epoch 400/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.1644e-07 - acc: 1.0000 - val_loss: 6.8830e-07 - val_acc: 1.0000\n",
      "Epoch 401/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.1471e-07 - acc: 1.0000 - val_loss: 6.8624e-07 - val_acc: 1.0000\n",
      "Epoch 402/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.1253e-07 - acc: 1.0000 - val_loss: 6.8455e-07 - val_acc: 1.0000\n",
      "Epoch 403/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.1008e-07 - acc: 1.0000 - val_loss: 6.8225e-07 - val_acc: 1.0000\n",
      "Epoch 404/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.0848e-07 - acc: 1.0000 - val_loss: 6.8032e-07 - val_acc: 1.0000\n",
      "Epoch 405/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.0648e-07 - acc: 1.0000 - val_loss: 6.7850e-07 - val_acc: 1.0000\n",
      "Epoch 406/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.0454e-07 - acc: 1.0000 - val_loss: 6.7608e-07 - val_acc: 1.0000\n",
      "Epoch 407/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.0248e-07 - acc: 1.0000 - val_loss: 6.7451e-07 - val_acc: 1.0000\n",
      "Epoch 408/1000\n",
      "1969/1969 [==============================] - 0s - loss: 7.0085e-07 - acc: 1.0000 - val_loss: 6.7330e-07 - val_acc: 1.0000\n",
      "Epoch 409/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.9894e-07 - acc: 1.0000 - val_loss: 6.7089e-07 - val_acc: 1.0000\n",
      "Epoch 410/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.9682e-07 - acc: 1.0000 - val_loss: 6.6895e-07 - val_acc: 1.0000\n",
      "Epoch 411/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.9449e-07 - acc: 1.0000 - val_loss: 6.6665e-07 - val_acc: 1.0000\n",
      "Epoch 412/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.9228e-07 - acc: 1.0000 - val_loss: 6.6484e-07 - val_acc: 1.0000\n",
      "Epoch 413/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.9022e-07 - acc: 1.0000 - val_loss: 6.6339e-07 - val_acc: 1.0000\n",
      "Epoch 414/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.8783e-07 - acc: 1.0000 - val_loss: 6.6146e-07 - val_acc: 1.0000\n",
      "Epoch 415/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.8571e-07 - acc: 1.0000 - val_loss: 6.5976e-07 - val_acc: 1.0000\n",
      "Epoch 416/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 6.8326e-07 - acc: 1.0000 - val_loss: 6.5734e-07 - val_acc: 1.0000\n",
      "Epoch 417/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.8141e-07 - acc: 1.0000 - val_loss: 6.5493e-07 - val_acc: 1.0000\n",
      "Epoch 418/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.7978e-07 - acc: 1.0000 - val_loss: 6.5336e-07 - val_acc: 1.0000\n",
      "Epoch 419/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.7709e-07 - acc: 1.0000 - val_loss: 6.5178e-07 - val_acc: 1.0000\n",
      "Epoch 420/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.7481e-07 - acc: 1.0000 - val_loss: 6.4949e-07 - val_acc: 1.0000\n",
      "Epoch 421/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.7267e-07 - acc: 1.0000 - val_loss: 6.4731e-07 - val_acc: 1.0000\n",
      "Epoch 422/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.6994e-07 - acc: 1.0000 - val_loss: 6.4562e-07 - val_acc: 1.0000\n",
      "Epoch 423/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.6806e-07 - acc: 1.0000 - val_loss: 6.4296e-07 - val_acc: 1.0000\n",
      "Epoch 424/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.6564e-07 - acc: 1.0000 - val_loss: 6.4114e-07 - val_acc: 1.0000\n",
      "Epoch 425/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.6377e-07 - acc: 1.0000 - val_loss: 6.3957e-07 - val_acc: 1.0000\n",
      "Epoch 426/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.6168e-07 - acc: 1.0000 - val_loss: 6.3824e-07 - val_acc: 1.0000\n",
      "Epoch 427/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.5971e-07 - acc: 1.0000 - val_loss: 6.3703e-07 - val_acc: 1.0000\n",
      "Epoch 428/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.5771e-07 - acc: 1.0000 - val_loss: 6.3449e-07 - val_acc: 1.0000\n",
      "Epoch 429/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.5571e-07 - acc: 1.0000 - val_loss: 6.3220e-07 - val_acc: 1.0000\n",
      "Epoch 430/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.5393e-07 - acc: 1.0000 - val_loss: 6.3038e-07 - val_acc: 1.0000\n",
      "Epoch 431/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.5199e-07 - acc: 1.0000 - val_loss: 6.2869e-07 - val_acc: 1.0000\n",
      "Epoch 432/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.4993e-07 - acc: 1.0000 - val_loss: 6.2591e-07 - val_acc: 1.0000\n",
      "Epoch 433/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.4802e-07 - acc: 1.0000 - val_loss: 6.2410e-07 - val_acc: 1.0000\n",
      "Epoch 434/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.4606e-07 - acc: 1.0000 - val_loss: 6.2240e-07 - val_acc: 1.0000\n",
      "Epoch 435/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.4424e-07 - acc: 1.0000 - val_loss: 6.1999e-07 - val_acc: 1.0000\n",
      "Epoch 436/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.4233e-07 - acc: 1.0000 - val_loss: 6.1805e-07 - val_acc: 1.0000\n",
      "Epoch 437/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.3961e-07 - acc: 1.0000 - val_loss: 6.1563e-07 - val_acc: 1.0000\n",
      "Epoch 438/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.3794e-07 - acc: 1.0000 - val_loss: 6.1479e-07 - val_acc: 1.0000\n",
      "Epoch 439/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.3655e-07 - acc: 1.0000 - val_loss: 6.1225e-07 - val_acc: 1.0000\n",
      "Epoch 440/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.3474e-07 - acc: 1.0000 - val_loss: 6.0971e-07 - val_acc: 1.0000\n",
      "Epoch 441/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.3283e-07 - acc: 1.0000 - val_loss: 6.0874e-07 - val_acc: 1.0000\n",
      "Epoch 442/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.3092e-07 - acc: 1.0000 - val_loss: 6.0645e-07 - val_acc: 1.0000\n",
      "Epoch 443/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.2883e-07 - acc: 1.0000 - val_loss: 6.0391e-07 - val_acc: 1.0000\n",
      "Epoch 444/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.2705e-07 - acc: 1.0000 - val_loss: 6.0233e-07 - val_acc: 1.0000\n",
      "Epoch 445/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.2475e-07 - acc: 1.0000 - val_loss: 6.0125e-07 - val_acc: 1.0000\n",
      "Epoch 446/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.2287e-07 - acc: 1.0000 - val_loss: 5.9919e-07 - val_acc: 1.0000\n",
      "Epoch 447/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.2136e-07 - acc: 1.0000 - val_loss: 5.9798e-07 - val_acc: 1.0000\n",
      "Epoch 448/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.1954e-07 - acc: 1.0000 - val_loss: 5.9605e-07 - val_acc: 1.0000\n",
      "Epoch 449/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.1790e-07 - acc: 1.0000 - val_loss: 5.9423e-07 - val_acc: 1.0000\n",
      "Epoch 450/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.1624e-07 - acc: 1.0000 - val_loss: 5.9290e-07 - val_acc: 1.0000\n",
      "Epoch 451/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.1427e-07 - acc: 1.0000 - val_loss: 5.9073e-07 - val_acc: 1.0000\n",
      "Epoch 452/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.1258e-07 - acc: 1.0000 - val_loss: 5.8879e-07 - val_acc: 1.0000\n",
      "Epoch 453/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.1076e-07 - acc: 1.0000 - val_loss: 5.8722e-07 - val_acc: 1.0000\n",
      "Epoch 454/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.0888e-07 - acc: 1.0000 - val_loss: 5.8456e-07 - val_acc: 1.0000\n",
      "Epoch 455/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.0676e-07 - acc: 1.0000 - val_loss: 5.8432e-07 - val_acc: 1.0000\n",
      "Epoch 456/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.0534e-07 - acc: 1.0000 - val_loss: 5.8214e-07 - val_acc: 1.0000\n",
      "Epoch 457/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.0356e-07 - acc: 1.0000 - val_loss: 5.8033e-07 - val_acc: 1.0000\n",
      "Epoch 458/1000\n",
      "1969/1969 [==============================] - 0s - loss: 6.0141e-07 - acc: 1.0000 - val_loss: 5.7840e-07 - val_acc: 1.0000\n",
      "Epoch 459/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.9959e-07 - acc: 1.0000 - val_loss: 5.7670e-07 - val_acc: 1.0000\n",
      "Epoch 460/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 5.0105e-07 - acc: 1.000 - 0s - loss: 5.9780e-07 - acc: 1.0000 - val_loss: 5.7513e-07 - val_acc: 1.0000\n",
      "Epoch 461/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.9617e-07 - acc: 1.0000 - val_loss: 5.7380e-07 - val_acc: 1.0000\n",
      "Epoch 462/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.9420e-07 - acc: 1.0000 - val_loss: 5.7199e-07 - val_acc: 1.0000\n",
      "Epoch 463/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.9251e-07 - acc: 1.0000 - val_loss: 5.7030e-07 - val_acc: 1.0000\n",
      "Epoch 464/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.9084e-07 - acc: 1.0000 - val_loss: 5.6921e-07 - val_acc: 1.0000\n",
      "Epoch 465/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.8933e-07 - acc: 1.0000 - val_loss: 5.6812e-07 - val_acc: 1.0000\n",
      "Epoch 466/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.8772e-07 - acc: 1.0000 - val_loss: 5.6618e-07 - val_acc: 1.0000\n",
      "Epoch 467/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.8672e-07 - acc: 1.0000 - val_loss: 5.6522e-07 - val_acc: 1.0000\n",
      "Epoch 468/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.8488e-07 - acc: 1.0000 - val_loss: 5.6377e-07 - val_acc: 1.0000\n",
      "Epoch 469/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.8391e-07 - acc: 1.0000 - val_loss: 5.6280e-07 - val_acc: 1.0000\n",
      "Epoch 470/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.8246e-07 - acc: 1.0000 - val_loss: 5.6171e-07 - val_acc: 1.0000\n",
      "Epoch 471/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.8134e-07 - acc: 1.0000 - val_loss: 5.5953e-07 - val_acc: 1.0000\n",
      "Epoch 472/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.8034e-07 - acc: 1.0000 - val_loss: 5.5869e-07 - val_acc: 1.0000\n",
      "Epoch 473/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.7867e-07 - acc: 1.0000 - val_loss: 5.5736e-07 - val_acc: 1.0000\n",
      "Epoch 474/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.7770e-07 - acc: 1.0000 - val_loss: 5.5712e-07 - val_acc: 1.0000\n",
      "Epoch 475/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 5.7589e-07 - acc: 1.0000 - val_loss: 5.5579e-07 - val_acc: 1.0000\n",
      "Epoch 476/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.7480e-07 - acc: 1.0000 - val_loss: 5.5434e-07 - val_acc: 1.0000\n",
      "Epoch 477/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.7337e-07 - acc: 1.0000 - val_loss: 5.5373e-07 - val_acc: 1.0000\n",
      "Epoch 478/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.7177e-07 - acc: 1.0000 - val_loss: 5.5216e-07 - val_acc: 1.0000\n",
      "Epoch 479/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.7077e-07 - acc: 1.0000 - val_loss: 5.5071e-07 - val_acc: 1.0000\n",
      "Epoch 480/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6944e-07 - acc: 1.0000 - val_loss: 5.4926e-07 - val_acc: 1.0000\n",
      "Epoch 481/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6844e-07 - acc: 1.0000 - val_loss: 5.4853e-07 - val_acc: 1.0000\n",
      "Epoch 482/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6738e-07 - acc: 1.0000 - val_loss: 5.4732e-07 - val_acc: 1.0000\n",
      "Epoch 483/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6620e-07 - acc: 1.0000 - val_loss: 5.4624e-07 - val_acc: 1.0000\n",
      "Epoch 484/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6499e-07 - acc: 1.0000 - val_loss: 5.4478e-07 - val_acc: 1.0000\n",
      "Epoch 485/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6420e-07 - acc: 1.0000 - val_loss: 5.4370e-07 - val_acc: 1.0000\n",
      "Epoch 486/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6323e-07 - acc: 1.0000 - val_loss: 5.4273e-07 - val_acc: 1.0000\n",
      "Epoch 487/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6226e-07 - acc: 1.0000 - val_loss: 5.4200e-07 - val_acc: 1.0000\n",
      "Epoch 488/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6127e-07 - acc: 1.0000 - val_loss: 5.4055e-07 - val_acc: 1.0000\n",
      "Epoch 489/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.6005e-07 - acc: 1.0000 - val_loss: 5.3983e-07 - val_acc: 1.0000\n",
      "Epoch 490/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5875e-07 - acc: 1.0000 - val_loss: 5.3922e-07 - val_acc: 1.0000\n",
      "Epoch 491/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5797e-07 - acc: 1.0000 - val_loss: 5.3826e-07 - val_acc: 1.0000\n",
      "Epoch 492/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5645e-07 - acc: 1.0000 - val_loss: 5.3668e-07 - val_acc: 1.0000\n",
      "Epoch 493/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 4.6752e-07 - acc: 1.000 - 0s - loss: 5.5576e-07 - acc: 1.0000 - val_loss: 5.3523e-07 - val_acc: 1.0000\n",
      "Epoch 494/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5442e-07 - acc: 1.0000 - val_loss: 5.3415e-07 - val_acc: 1.0000\n",
      "Epoch 495/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5330e-07 - acc: 1.0000 - val_loss: 5.3330e-07 - val_acc: 1.0000\n",
      "Epoch 496/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5212e-07 - acc: 1.0000 - val_loss: 5.3245e-07 - val_acc: 1.0000\n",
      "Epoch 497/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5131e-07 - acc: 1.0000 - val_loss: 5.3197e-07 - val_acc: 1.0000\n",
      "Epoch 498/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.5000e-07 - acc: 1.0000 - val_loss: 5.3149e-07 - val_acc: 1.0000\n",
      "Epoch 499/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4882e-07 - acc: 1.0000 - val_loss: 5.3052e-07 - val_acc: 1.0000\n",
      "Epoch 500/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4795e-07 - acc: 1.0000 - val_loss: 5.2967e-07 - val_acc: 1.0000\n",
      "Epoch 501/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4689e-07 - acc: 1.0000 - val_loss: 5.2883e-07 - val_acc: 1.0000\n",
      "Epoch 502/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4598e-07 - acc: 1.0000 - val_loss: 5.2725e-07 - val_acc: 1.0000\n",
      "Epoch 503/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4513e-07 - acc: 1.0000 - val_loss: 5.2665e-07 - val_acc: 1.0000\n",
      "Epoch 504/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4425e-07 - acc: 1.0000 - val_loss: 5.2580e-07 - val_acc: 1.0000\n",
      "Epoch 505/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4304e-07 - acc: 1.0000 - val_loss: 5.2508e-07 - val_acc: 1.0000\n",
      "Epoch 506/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.4192e-07 - acc: 1.0000 - val_loss: 5.2375e-07 - val_acc: 1.0000\n",
      "Epoch 507/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 3.6648e-07 - acc: 1.000 - 0s - loss: 5.4095e-07 - acc: 1.0000 - val_loss: 5.2242e-07 - val_acc: 1.0000\n",
      "Epoch 508/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3947e-07 - acc: 1.0000 - val_loss: 5.2145e-07 - val_acc: 1.0000\n",
      "Epoch 509/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3877e-07 - acc: 1.0000 - val_loss: 5.2036e-07 - val_acc: 1.0000\n",
      "Epoch 510/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3759e-07 - acc: 1.0000 - val_loss: 5.1940e-07 - val_acc: 1.0000\n",
      "Epoch 511/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3632e-07 - acc: 1.0000 - val_loss: 5.1855e-07 - val_acc: 1.0000\n",
      "Epoch 512/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3529e-07 - acc: 1.0000 - val_loss: 5.1782e-07 - val_acc: 1.0000\n",
      "Epoch 513/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3463e-07 - acc: 1.0000 - val_loss: 5.1698e-07 - val_acc: 1.0000\n",
      "Epoch 514/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3348e-07 - acc: 1.0000 - val_loss: 5.1565e-07 - val_acc: 1.0000\n",
      "Epoch 515/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3251e-07 - acc: 1.0000 - val_loss: 5.1516e-07 - val_acc: 1.0000\n",
      "Epoch 516/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3124e-07 - acc: 1.0000 - val_loss: 5.1323e-07 - val_acc: 1.0000\n",
      "Epoch 517/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.3009e-07 - acc: 1.0000 - val_loss: 5.1250e-07 - val_acc: 1.0000\n",
      "Epoch 518/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2927e-07 - acc: 1.0000 - val_loss: 5.1093e-07 - val_acc: 1.0000\n",
      "Epoch 519/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2782e-07 - acc: 1.0000 - val_loss: 5.1009e-07 - val_acc: 1.0000\n",
      "Epoch 520/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2691e-07 - acc: 1.0000 - val_loss: 5.0948e-07 - val_acc: 1.0000\n",
      "Epoch 521/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2585e-07 - acc: 1.0000 - val_loss: 5.0803e-07 - val_acc: 1.0000\n",
      "Epoch 522/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2482e-07 - acc: 1.0000 - val_loss: 5.0706e-07 - val_acc: 1.0000\n",
      "Epoch 523/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2373e-07 - acc: 1.0000 - val_loss: 5.0658e-07 - val_acc: 1.0000\n",
      "Epoch 524/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2261e-07 - acc: 1.0000 - val_loss: 5.0525e-07 - val_acc: 1.0000\n",
      "Epoch 525/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2164e-07 - acc: 1.0000 - val_loss: 5.0416e-07 - val_acc: 1.0000\n",
      "Epoch 526/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.2010e-07 - acc: 1.0000 - val_loss: 5.0319e-07 - val_acc: 1.0000\n",
      "Epoch 527/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1913e-07 - acc: 1.0000 - val_loss: 5.0259e-07 - val_acc: 1.0000\n",
      "Epoch 528/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1792e-07 - acc: 1.0000 - val_loss: 5.0199e-07 - val_acc: 1.0000\n",
      "Epoch 529/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1713e-07 - acc: 1.0000 - val_loss: 5.0114e-07 - val_acc: 1.0000\n",
      "Epoch 530/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1634e-07 - acc: 1.0000 - val_loss: 4.9981e-07 - val_acc: 1.0000\n",
      "Epoch 531/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1486e-07 - acc: 1.0000 - val_loss: 4.9848e-07 - val_acc: 1.0000\n",
      "Epoch 532/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1413e-07 - acc: 1.0000 - val_loss: 4.9715e-07 - val_acc: 1.0000\n",
      "Epoch 533/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1268e-07 - acc: 1.0000 - val_loss: 4.9630e-07 - val_acc: 1.0000\n",
      "Epoch 534/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 5.1186e-07 - acc: 1.0000 - val_loss: 4.9497e-07 - val_acc: 1.0000\n",
      "Epoch 535/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.1074e-07 - acc: 1.0000 - val_loss: 4.9425e-07 - val_acc: 1.0000\n",
      "Epoch 536/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0962e-07 - acc: 1.0000 - val_loss: 4.9352e-07 - val_acc: 1.0000\n",
      "Epoch 537/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0844e-07 - acc: 1.0000 - val_loss: 4.9207e-07 - val_acc: 1.0000\n",
      "Epoch 538/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0738e-07 - acc: 1.0000 - val_loss: 4.9038e-07 - val_acc: 1.0000\n",
      "Epoch 539/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0641e-07 - acc: 1.0000 - val_loss: 4.8941e-07 - val_acc: 1.0000\n",
      "Epoch 540/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0508e-07 - acc: 1.0000 - val_loss: 4.8857e-07 - val_acc: 1.0000\n",
      "Epoch 541/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0411e-07 - acc: 1.0000 - val_loss: 4.8724e-07 - val_acc: 1.0000\n",
      "Epoch 542/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0327e-07 - acc: 1.0000 - val_loss: 4.8591e-07 - val_acc: 1.0000\n",
      "Epoch 543/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0230e-07 - acc: 1.0000 - val_loss: 4.8445e-07 - val_acc: 1.0000\n",
      "Epoch 544/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0075e-07 - acc: 1.0000 - val_loss: 4.8385e-07 - val_acc: 1.0000\n",
      "Epoch 545/1000\n",
      "1969/1969 [==============================] - 0s - loss: 5.0015e-07 - acc: 1.0000 - val_loss: 4.8264e-07 - val_acc: 1.0000\n",
      "Epoch 546/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9857e-07 - acc: 1.0000 - val_loss: 4.8216e-07 - val_acc: 1.0000\n",
      "Epoch 547/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9730e-07 - acc: 1.0000 - val_loss: 4.8131e-07 - val_acc: 1.0000\n",
      "Epoch 548/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9661e-07 - acc: 1.0000 - val_loss: 4.8071e-07 - val_acc: 1.0000\n",
      "Epoch 549/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9564e-07 - acc: 1.0000 - val_loss: 4.7950e-07 - val_acc: 1.0000\n",
      "Epoch 550/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9470e-07 - acc: 1.0000 - val_loss: 4.7865e-07 - val_acc: 1.0000\n",
      "Epoch 551/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9352e-07 - acc: 1.0000 - val_loss: 4.7768e-07 - val_acc: 1.0000\n",
      "Epoch 552/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9246e-07 - acc: 1.0000 - val_loss: 4.7611e-07 - val_acc: 1.0000\n",
      "Epoch 553/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9140e-07 - acc: 1.0000 - val_loss: 4.7527e-07 - val_acc: 1.0000\n",
      "Epoch 554/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.9085e-07 - acc: 1.0000 - val_loss: 4.7442e-07 - val_acc: 1.0000\n",
      "Epoch 555/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8995e-07 - acc: 1.0000 - val_loss: 4.7357e-07 - val_acc: 1.0000\n",
      "Epoch 556/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8904e-07 - acc: 1.0000 - val_loss: 4.7236e-07 - val_acc: 1.0000\n",
      "Epoch 557/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8758e-07 - acc: 1.0000 - val_loss: 4.7152e-07 - val_acc: 1.0000\n",
      "Epoch 558/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8637e-07 - acc: 1.0000 - val_loss: 4.7043e-07 - val_acc: 1.0000\n",
      "Epoch 559/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8531e-07 - acc: 1.0000 - val_loss: 4.6970e-07 - val_acc: 1.0000\n",
      "Epoch 560/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8422e-07 - acc: 1.0000 - val_loss: 4.6886e-07 - val_acc: 1.0000\n",
      "Epoch 561/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8326e-07 - acc: 1.0000 - val_loss: 4.6813e-07 - val_acc: 1.0000\n",
      "Epoch 562/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8211e-07 - acc: 1.0000 - val_loss: 4.6680e-07 - val_acc: 1.0000\n",
      "Epoch 563/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.8062e-07 - acc: 1.0000 - val_loss: 4.6596e-07 - val_acc: 1.0000\n",
      "Epoch 564/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 4.5588e-07 - acc: 1.000 - 0s - loss: 4.7917e-07 - acc: 1.0000 - val_loss: 4.6523e-07 - val_acc: 1.0000\n",
      "Epoch 565/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7826e-07 - acc: 1.0000 - val_loss: 4.6354e-07 - val_acc: 1.0000\n",
      "Epoch 566/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7723e-07 - acc: 1.0000 - val_loss: 4.6245e-07 - val_acc: 1.0000\n",
      "Epoch 567/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7620e-07 - acc: 1.0000 - val_loss: 4.6148e-07 - val_acc: 1.0000\n",
      "Epoch 568/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7526e-07 - acc: 1.0000 - val_loss: 4.6040e-07 - val_acc: 1.0000\n",
      "Epoch 569/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7427e-07 - acc: 1.0000 - val_loss: 4.5943e-07 - val_acc: 1.0000\n",
      "Epoch 570/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7296e-07 - acc: 1.0000 - val_loss: 4.5846e-07 - val_acc: 1.0000\n",
      "Epoch 571/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7206e-07 - acc: 1.0000 - val_loss: 4.5689e-07 - val_acc: 1.0000\n",
      "Epoch 572/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 3.4552e-07 - acc: 1.000 - 0s - loss: 4.7136e-07 - acc: 1.0000 - val_loss: 4.5653e-07 - val_acc: 1.0000\n",
      "Epoch 573/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.7045e-07 - acc: 1.0000 - val_loss: 4.5532e-07 - val_acc: 1.0000\n",
      "Epoch 574/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6957e-07 - acc: 1.0000 - val_loss: 4.5447e-07 - val_acc: 1.0000\n",
      "Epoch 575/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6866e-07 - acc: 1.0000 - val_loss: 4.5399e-07 - val_acc: 1.0000\n",
      "Epoch 576/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6718e-07 - acc: 1.0000 - val_loss: 4.5278e-07 - val_acc: 1.0000\n",
      "Epoch 577/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6673e-07 - acc: 1.0000 - val_loss: 4.5181e-07 - val_acc: 1.0000\n",
      "Epoch 578/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6555e-07 - acc: 1.0000 - val_loss: 4.5060e-07 - val_acc: 1.0000\n",
      "Epoch 579/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6434e-07 - acc: 1.0000 - val_loss: 4.5012e-07 - val_acc: 1.0000\n",
      "Epoch 580/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6328e-07 - acc: 1.0000 - val_loss: 4.4891e-07 - val_acc: 1.0000\n",
      "Epoch 581/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6228e-07 - acc: 1.0000 - val_loss: 4.4806e-07 - val_acc: 1.0000\n",
      "Epoch 582/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6161e-07 - acc: 1.0000 - val_loss: 4.4673e-07 - val_acc: 1.0000\n",
      "Epoch 583/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.6049e-07 - acc: 1.0000 - val_loss: 4.4589e-07 - val_acc: 1.0000\n",
      "Epoch 584/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5958e-07 - acc: 1.0000 - val_loss: 4.4552e-07 - val_acc: 1.0000\n",
      "Epoch 585/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5883e-07 - acc: 1.0000 - val_loss: 4.4456e-07 - val_acc: 1.0000\n",
      "Epoch 586/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5783e-07 - acc: 1.0000 - val_loss: 4.4323e-07 - val_acc: 1.0000\n",
      "Epoch 587/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5704e-07 - acc: 1.0000 - val_loss: 4.4178e-07 - val_acc: 1.0000\n",
      "Epoch 588/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5613e-07 - acc: 1.0000 - val_loss: 4.4081e-07 - val_acc: 1.0000\n",
      "Epoch 589/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5525e-07 - acc: 1.0000 - val_loss: 4.3984e-07 - val_acc: 1.0000\n",
      "Epoch 590/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5432e-07 - acc: 1.0000 - val_loss: 4.3875e-07 - val_acc: 1.0000\n",
      "Epoch 591/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5347e-07 - acc: 1.0000 - val_loss: 4.3791e-07 - val_acc: 1.0000\n",
      "Epoch 592/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5250e-07 - acc: 1.0000 - val_loss: 4.3694e-07 - val_acc: 1.0000\n",
      "Epoch 593/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 4.5208e-07 - acc: 1.0000 - val_loss: 4.3621e-07 - val_acc: 1.0000\n",
      "Epoch 594/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.5065e-07 - acc: 1.0000 - val_loss: 4.3513e-07 - val_acc: 1.0000\n",
      "Epoch 595/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4968e-07 - acc: 1.0000 - val_loss: 4.3452e-07 - val_acc: 1.0000\n",
      "Epoch 596/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4862e-07 - acc: 1.0000 - val_loss: 4.3343e-07 - val_acc: 1.0000\n",
      "Epoch 597/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4784e-07 - acc: 1.0000 - val_loss: 4.3283e-07 - val_acc: 1.0000\n",
      "Epoch 598/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4711e-07 - acc: 1.0000 - val_loss: 4.3198e-07 - val_acc: 1.0000\n",
      "Epoch 599/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4614e-07 - acc: 1.0000 - val_loss: 4.3114e-07 - val_acc: 1.0000\n",
      "Epoch 600/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4551e-07 - acc: 1.0000 - val_loss: 4.3017e-07 - val_acc: 1.0000\n",
      "Epoch 601/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4460e-07 - acc: 1.0000 - val_loss: 4.2932e-07 - val_acc: 1.0000\n",
      "Epoch 602/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4366e-07 - acc: 1.0000 - val_loss: 4.2884e-07 - val_acc: 1.0000\n",
      "Epoch 603/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4257e-07 - acc: 1.0000 - val_loss: 4.2799e-07 - val_acc: 1.0000\n",
      "Epoch 604/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4187e-07 - acc: 1.0000 - val_loss: 4.2703e-07 - val_acc: 1.0000\n",
      "Epoch 605/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.4091e-07 - acc: 1.0000 - val_loss: 4.2630e-07 - val_acc: 1.0000\n",
      "Epoch 606/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 3.7579e-07 - acc: 1.000 - 0s - loss: 4.4012e-07 - acc: 1.0000 - val_loss: 4.2533e-07 - val_acc: 1.0000\n",
      "Epoch 607/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3945e-07 - acc: 1.0000 - val_loss: 4.2449e-07 - val_acc: 1.0000\n",
      "Epoch 608/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3830e-07 - acc: 1.0000 - val_loss: 4.2388e-07 - val_acc: 1.0000\n",
      "Epoch 609/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3758e-07 - acc: 1.0000 - val_loss: 4.2231e-07 - val_acc: 1.0000\n",
      "Epoch 610/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3636e-07 - acc: 1.0000 - val_loss: 4.2146e-07 - val_acc: 1.0000\n",
      "Epoch 611/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3567e-07 - acc: 1.0000 - val_loss: 4.2110e-07 - val_acc: 1.0000\n",
      "Epoch 612/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3515e-07 - acc: 1.0000 - val_loss: 4.2050e-07 - val_acc: 1.0000\n",
      "Epoch 613/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3422e-07 - acc: 1.0000 - val_loss: 4.1941e-07 - val_acc: 1.0000\n",
      "Epoch 614/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3322e-07 - acc: 1.0000 - val_loss: 4.1868e-07 - val_acc: 1.0000\n",
      "Epoch 615/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3213e-07 - acc: 1.0000 - val_loss: 4.1868e-07 - val_acc: 1.0000\n",
      "Epoch 616/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3140e-07 - acc: 1.0000 - val_loss: 4.1772e-07 - val_acc: 1.0000\n",
      "Epoch 617/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.3070e-07 - acc: 1.0000 - val_loss: 4.1699e-07 - val_acc: 1.0000\n",
      "Epoch 618/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2983e-07 - acc: 1.0000 - val_loss: 4.1590e-07 - val_acc: 1.0000\n",
      "Epoch 619/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2886e-07 - acc: 1.0000 - val_loss: 4.1530e-07 - val_acc: 1.0000\n",
      "Epoch 620/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2792e-07 - acc: 1.0000 - val_loss: 4.1421e-07 - val_acc: 1.0000\n",
      "Epoch 621/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2713e-07 - acc: 1.0000 - val_loss: 4.1336e-07 - val_acc: 1.0000\n",
      "Epoch 622/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2631e-07 - acc: 1.0000 - val_loss: 4.1300e-07 - val_acc: 1.0000\n",
      "Epoch 623/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2550e-07 - acc: 1.0000 - val_loss: 4.1228e-07 - val_acc: 1.0000\n",
      "Epoch 624/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2477e-07 - acc: 1.0000 - val_loss: 4.1119e-07 - val_acc: 1.0000\n",
      "Epoch 625/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2365e-07 - acc: 1.0000 - val_loss: 4.1034e-07 - val_acc: 1.0000\n",
      "Epoch 626/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2280e-07 - acc: 1.0000 - val_loss: 4.0950e-07 - val_acc: 1.0000\n",
      "Epoch 627/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2235e-07 - acc: 1.0000 - val_loss: 4.0877e-07 - val_acc: 1.0000\n",
      "Epoch 628/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2129e-07 - acc: 1.0000 - val_loss: 4.0817e-07 - val_acc: 1.0000\n",
      "Epoch 629/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2099e-07 - acc: 1.0000 - val_loss: 4.0744e-07 - val_acc: 1.0000\n",
      "Epoch 630/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.2014e-07 - acc: 1.0000 - val_loss: 4.0671e-07 - val_acc: 1.0000\n",
      "Epoch 631/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1935e-07 - acc: 1.0000 - val_loss: 4.0551e-07 - val_acc: 1.0000\n",
      "Epoch 632/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1850e-07 - acc: 1.0000 - val_loss: 4.0514e-07 - val_acc: 1.0000\n",
      "Epoch 633/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1766e-07 - acc: 1.0000 - val_loss: 4.0381e-07 - val_acc: 1.0000\n",
      "Epoch 634/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1623e-07 - acc: 1.0000 - val_loss: 4.0333e-07 - val_acc: 1.0000\n",
      "Epoch 635/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1548e-07 - acc: 1.0000 - val_loss: 4.0272e-07 - val_acc: 1.0000\n",
      "Epoch 636/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1481e-07 - acc: 1.0000 - val_loss: 4.0212e-07 - val_acc: 1.0000\n",
      "Epoch 637/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1402e-07 - acc: 1.0000 - val_loss: 4.0152e-07 - val_acc: 1.0000\n",
      "Epoch 638/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1345e-07 - acc: 1.0000 - val_loss: 4.0055e-07 - val_acc: 1.0000\n",
      "Epoch 639/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1239e-07 - acc: 1.0000 - val_loss: 3.9946e-07 - val_acc: 1.0000\n",
      "Epoch 640/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1151e-07 - acc: 1.0000 - val_loss: 3.9873e-07 - val_acc: 1.0000\n",
      "Epoch 641/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1097e-07 - acc: 1.0000 - val_loss: 3.9765e-07 - val_acc: 1.0000\n",
      "Epoch 642/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.1030e-07 - acc: 1.0000 - val_loss: 3.9680e-07 - val_acc: 1.0000\n",
      "Epoch 643/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0951e-07 - acc: 1.0000 - val_loss: 3.9620e-07 - val_acc: 1.0000\n",
      "Epoch 644/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0848e-07 - acc: 1.0000 - val_loss: 3.9583e-07 - val_acc: 1.0000\n",
      "Epoch 645/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0785e-07 - acc: 1.0000 - val_loss: 3.9499e-07 - val_acc: 1.0000\n",
      "Epoch 646/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0727e-07 - acc: 1.0000 - val_loss: 3.9438e-07 - val_acc: 1.0000\n",
      "Epoch 647/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0652e-07 - acc: 1.0000 - val_loss: 3.9390e-07 - val_acc: 1.0000\n",
      "Epoch 648/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0561e-07 - acc: 1.0000 - val_loss: 3.9305e-07 - val_acc: 1.0000\n",
      "Epoch 649/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0479e-07 - acc: 1.0000 - val_loss: 3.9245e-07 - val_acc: 1.0000\n",
      "Epoch 650/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0391e-07 - acc: 1.0000 - val_loss: 3.9184e-07 - val_acc: 1.0000\n",
      "Epoch 651/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0285e-07 - acc: 1.0000 - val_loss: 3.9076e-07 - val_acc: 1.0000\n",
      "Epoch 652/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 4.0240e-07 - acc: 1.0000 - val_loss: 3.9015e-07 - val_acc: 1.0000\n",
      "Epoch 653/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0155e-07 - acc: 1.0000 - val_loss: 3.8930e-07 - val_acc: 1.0000\n",
      "Epoch 654/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0086e-07 - acc: 1.0000 - val_loss: 3.8822e-07 - val_acc: 1.0000\n",
      "Epoch 655/1000\n",
      "1969/1969 [==============================] - 0s - loss: 4.0025e-07 - acc: 1.0000 - val_loss: 3.8797e-07 - val_acc: 1.0000\n",
      "Epoch 656/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9937e-07 - acc: 1.0000 - val_loss: 3.8761e-07 - val_acc: 1.0000\n",
      "Epoch 657/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9831e-07 - acc: 1.0000 - val_loss: 3.8664e-07 - val_acc: 1.0000\n",
      "Epoch 658/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9753e-07 - acc: 1.0000 - val_loss: 3.8568e-07 - val_acc: 1.0000\n",
      "Epoch 659/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9659e-07 - acc: 1.0000 - val_loss: 3.8447e-07 - val_acc: 1.0000\n",
      "Epoch 660/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9577e-07 - acc: 1.0000 - val_loss: 3.8411e-07 - val_acc: 1.0000\n",
      "Epoch 661/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9501e-07 - acc: 1.0000 - val_loss: 3.8326e-07 - val_acc: 1.0000\n",
      "Epoch 662/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9438e-07 - acc: 1.0000 - val_loss: 3.8290e-07 - val_acc: 1.0000\n",
      "Epoch 663/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9332e-07 - acc: 1.0000 - val_loss: 3.8205e-07 - val_acc: 1.0000\n",
      "Epoch 664/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9259e-07 - acc: 1.0000 - val_loss: 3.8145e-07 - val_acc: 1.0000\n",
      "Epoch 665/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9199e-07 - acc: 1.0000 - val_loss: 3.8072e-07 - val_acc: 1.0000\n",
      "Epoch 666/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9117e-07 - acc: 1.0000 - val_loss: 3.8024e-07 - val_acc: 1.0000\n",
      "Epoch 667/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.9047e-07 - acc: 1.0000 - val_loss: 3.7975e-07 - val_acc: 1.0000\n",
      "Epoch 668/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8984e-07 - acc: 1.0000 - val_loss: 3.7879e-07 - val_acc: 1.0000\n",
      "Epoch 669/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8902e-07 - acc: 1.0000 - val_loss: 3.7818e-07 - val_acc: 1.0000\n",
      "Epoch 670/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8857e-07 - acc: 1.0000 - val_loss: 3.7734e-07 - val_acc: 1.0000\n",
      "Epoch 671/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8778e-07 - acc: 1.0000 - val_loss: 3.7685e-07 - val_acc: 1.0000\n",
      "Epoch 672/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8705e-07 - acc: 1.0000 - val_loss: 3.7637e-07 - val_acc: 1.0000\n",
      "Epoch 673/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8639e-07 - acc: 1.0000 - val_loss: 3.7564e-07 - val_acc: 1.0000\n",
      "Epoch 674/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8521e-07 - acc: 1.0000 - val_loss: 3.7504e-07 - val_acc: 1.0000\n",
      "Epoch 675/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8457e-07 - acc: 1.0000 - val_loss: 3.7419e-07 - val_acc: 1.0000\n",
      "Epoch 676/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8412e-07 - acc: 1.0000 - val_loss: 3.7335e-07 - val_acc: 1.0000\n",
      "Epoch 677/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8366e-07 - acc: 1.0000 - val_loss: 3.7226e-07 - val_acc: 1.0000\n",
      "Epoch 678/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8300e-07 - acc: 1.0000 - val_loss: 3.7165e-07 - val_acc: 1.0000\n",
      "Epoch 679/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8242e-07 - acc: 1.0000 - val_loss: 3.7129e-07 - val_acc: 1.0000\n",
      "Epoch 680/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 3.3062e-07 - acc: 1.000 - 0s - loss: 3.8172e-07 - acc: 1.0000 - val_loss: 3.7020e-07 - val_acc: 1.0000\n",
      "Epoch 681/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8088e-07 - acc: 1.0000 - val_loss: 3.6936e-07 - val_acc: 1.0000\n",
      "Epoch 682/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.8012e-07 - acc: 1.0000 - val_loss: 3.6875e-07 - val_acc: 1.0000\n",
      "Epoch 683/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7936e-07 - acc: 1.0000 - val_loss: 3.6803e-07 - val_acc: 1.0000\n",
      "Epoch 684/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7846e-07 - acc: 1.0000 - val_loss: 3.6730e-07 - val_acc: 1.0000\n",
      "Epoch 685/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7806e-07 - acc: 1.0000 - val_loss: 3.6658e-07 - val_acc: 1.0000\n",
      "Epoch 686/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7691e-07 - acc: 1.0000 - val_loss: 3.6609e-07 - val_acc: 1.0000\n",
      "Epoch 687/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7634e-07 - acc: 1.0000 - val_loss: 3.6537e-07 - val_acc: 1.0000\n",
      "Epoch 688/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7531e-07 - acc: 1.0000 - val_loss: 3.6500e-07 - val_acc: 1.0000\n",
      "Epoch 689/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7473e-07 - acc: 1.0000 - val_loss: 3.6440e-07 - val_acc: 1.0000\n",
      "Epoch 690/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7382e-07 - acc: 1.0000 - val_loss: 3.6343e-07 - val_acc: 1.0000\n",
      "Epoch 691/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7289e-07 - acc: 1.0000 - val_loss: 3.6283e-07 - val_acc: 1.0000\n",
      "Epoch 692/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7216e-07 - acc: 1.0000 - val_loss: 3.6198e-07 - val_acc: 1.0000\n",
      "Epoch 693/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7146e-07 - acc: 1.0000 - val_loss: 3.6089e-07 - val_acc: 1.0000\n",
      "Epoch 694/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.7071e-07 - acc: 1.0000 - val_loss: 3.6029e-07 - val_acc: 1.0000\n",
      "Epoch 695/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6965e-07 - acc: 1.0000 - val_loss: 3.5932e-07 - val_acc: 1.0000\n",
      "Epoch 696/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6895e-07 - acc: 1.0000 - val_loss: 3.5872e-07 - val_acc: 1.0000\n",
      "Epoch 697/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6810e-07 - acc: 1.0000 - val_loss: 3.5799e-07 - val_acc: 1.0000\n",
      "Epoch 698/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6701e-07 - acc: 1.0000 - val_loss: 3.5727e-07 - val_acc: 1.0000\n",
      "Epoch 699/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6635e-07 - acc: 1.0000 - val_loss: 3.5618e-07 - val_acc: 1.0000\n",
      "Epoch 700/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6538e-07 - acc: 1.0000 - val_loss: 3.5485e-07 - val_acc: 1.0000\n",
      "Epoch 701/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6504e-07 - acc: 1.0000 - val_loss: 3.5424e-07 - val_acc: 1.0000\n",
      "Epoch 702/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6405e-07 - acc: 1.0000 - val_loss: 3.5328e-07 - val_acc: 1.0000\n",
      "Epoch 703/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6338e-07 - acc: 1.0000 - val_loss: 3.5219e-07 - val_acc: 1.0000\n",
      "Epoch 704/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6262e-07 - acc: 1.0000 - val_loss: 3.5182e-07 - val_acc: 1.0000\n",
      "Epoch 705/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6190e-07 - acc: 1.0000 - val_loss: 3.5062e-07 - val_acc: 1.0000\n",
      "Epoch 706/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6123e-07 - acc: 1.0000 - val_loss: 3.4965e-07 - val_acc: 1.0000\n",
      "Epoch 707/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.6038e-07 - acc: 1.0000 - val_loss: 3.4904e-07 - val_acc: 1.0000\n",
      "Epoch 708/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5947e-07 - acc: 1.0000 - val_loss: 3.4844e-07 - val_acc: 1.0000\n",
      "Epoch 709/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5857e-07 - acc: 1.0000 - val_loss: 3.4771e-07 - val_acc: 1.0000\n",
      "Epoch 710/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5775e-07 - acc: 1.0000 - val_loss: 3.4699e-07 - val_acc: 1.0000\n",
      "Epoch 711/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 3.5696e-07 - acc: 1.0000 - val_loss: 3.4602e-07 - val_acc: 1.0000\n",
      "Epoch 712/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5584e-07 - acc: 1.0000 - val_loss: 3.4481e-07 - val_acc: 1.0000\n",
      "Epoch 713/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5515e-07 - acc: 1.0000 - val_loss: 3.4433e-07 - val_acc: 1.0000\n",
      "Epoch 714/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5424e-07 - acc: 1.0000 - val_loss: 3.4360e-07 - val_acc: 1.0000\n",
      "Epoch 715/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5348e-07 - acc: 1.0000 - val_loss: 3.4336e-07 - val_acc: 1.0000\n",
      "Epoch 716/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5275e-07 - acc: 1.0000 - val_loss: 3.4288e-07 - val_acc: 1.0000\n",
      "Epoch 717/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5224e-07 - acc: 1.0000 - val_loss: 3.4239e-07 - val_acc: 1.0000\n",
      "Epoch 718/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5163e-07 - acc: 1.0000 - val_loss: 3.4167e-07 - val_acc: 1.0000\n",
      "Epoch 719/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.5097e-07 - acc: 1.0000 - val_loss: 3.4082e-07 - val_acc: 1.0000\n",
      "Epoch 720/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4994e-07 - acc: 1.0000 - val_loss: 3.3961e-07 - val_acc: 1.0000\n",
      "Epoch 721/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4909e-07 - acc: 1.0000 - val_loss: 3.3877e-07 - val_acc: 1.0000\n",
      "Epoch 722/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4843e-07 - acc: 1.0000 - val_loss: 3.3780e-07 - val_acc: 1.0000\n",
      "Epoch 723/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4785e-07 - acc: 1.0000 - val_loss: 3.3720e-07 - val_acc: 1.0000\n",
      "Epoch 724/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4688e-07 - acc: 1.0000 - val_loss: 3.3611e-07 - val_acc: 1.0000\n",
      "Epoch 725/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4646e-07 - acc: 1.0000 - val_loss: 3.3526e-07 - val_acc: 1.0000\n",
      "Epoch 726/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4564e-07 - acc: 1.0000 - val_loss: 3.3490e-07 - val_acc: 1.0000\n",
      "Epoch 727/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4516e-07 - acc: 1.0000 - val_loss: 3.3429e-07 - val_acc: 1.0000\n",
      "Epoch 728/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4446e-07 - acc: 1.0000 - val_loss: 3.3393e-07 - val_acc: 1.0000\n",
      "Epoch 729/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4379e-07 - acc: 1.0000 - val_loss: 3.3345e-07 - val_acc: 1.0000\n",
      "Epoch 730/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4322e-07 - acc: 1.0000 - val_loss: 3.3333e-07 - val_acc: 1.0000\n",
      "Epoch 731/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4255e-07 - acc: 1.0000 - val_loss: 3.3248e-07 - val_acc: 1.0000\n",
      "Epoch 732/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4192e-07 - acc: 1.0000 - val_loss: 3.3200e-07 - val_acc: 1.0000\n",
      "Epoch 733/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4107e-07 - acc: 1.0000 - val_loss: 3.3091e-07 - val_acc: 1.0000\n",
      "Epoch 734/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 2.9942e-07 - acc: 1.000 - 0s - loss: 3.4049e-07 - acc: 1.0000 - val_loss: 3.3055e-07 - val_acc: 1.0000\n",
      "Epoch 735/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.4004e-07 - acc: 1.0000 - val_loss: 3.3006e-07 - val_acc: 1.0000\n",
      "Epoch 736/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3934e-07 - acc: 1.0000 - val_loss: 3.2958e-07 - val_acc: 1.0000\n",
      "Epoch 737/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3904e-07 - acc: 1.0000 - val_loss: 3.2873e-07 - val_acc: 1.0000\n",
      "Epoch 738/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3850e-07 - acc: 1.0000 - val_loss: 3.2801e-07 - val_acc: 1.0000\n",
      "Epoch 739/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3795e-07 - acc: 1.0000 - val_loss: 3.2789e-07 - val_acc: 1.0000\n",
      "Epoch 740/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3726e-07 - acc: 1.0000 - val_loss: 3.2728e-07 - val_acc: 1.0000\n",
      "Epoch 741/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3638e-07 - acc: 1.0000 - val_loss: 3.2680e-07 - val_acc: 1.0000\n",
      "Epoch 742/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3595e-07 - acc: 1.0000 - val_loss: 3.2631e-07 - val_acc: 1.0000\n",
      "Epoch 743/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3550e-07 - acc: 1.0000 - val_loss: 3.2583e-07 - val_acc: 1.0000\n",
      "Epoch 744/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3499e-07 - acc: 1.0000 - val_loss: 3.2547e-07 - val_acc: 1.0000\n",
      "Epoch 745/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3453e-07 - acc: 1.0000 - val_loss: 3.2498e-07 - val_acc: 1.0000\n",
      "Epoch 746/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3402e-07 - acc: 1.0000 - val_loss: 3.2450e-07 - val_acc: 1.0000\n",
      "Epoch 747/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3356e-07 - acc: 1.0000 - val_loss: 3.2414e-07 - val_acc: 1.0000\n",
      "Epoch 748/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3293e-07 - acc: 1.0000 - val_loss: 3.2390e-07 - val_acc: 1.0000\n",
      "Epoch 749/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3256e-07 - acc: 1.0000 - val_loss: 3.2329e-07 - val_acc: 1.0000\n",
      "Epoch 750/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3217e-07 - acc: 1.0000 - val_loss: 3.2232e-07 - val_acc: 1.0000\n",
      "Epoch 751/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3159e-07 - acc: 1.0000 - val_loss: 3.2196e-07 - val_acc: 1.0000\n",
      "Epoch 752/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3087e-07 - acc: 1.0000 - val_loss: 3.2136e-07 - val_acc: 1.0000\n",
      "Epoch 753/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3038e-07 - acc: 1.0000 - val_loss: 3.2124e-07 - val_acc: 1.0000\n",
      "Epoch 754/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.3002e-07 - acc: 1.0000 - val_loss: 3.2075e-07 - val_acc: 1.0000\n",
      "Epoch 755/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2948e-07 - acc: 1.0000 - val_loss: 3.2039e-07 - val_acc: 1.0000\n",
      "Epoch 756/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2914e-07 - acc: 1.0000 - val_loss: 3.1942e-07 - val_acc: 1.0000\n",
      "Epoch 757/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2845e-07 - acc: 1.0000 - val_loss: 3.1846e-07 - val_acc: 1.0000\n",
      "Epoch 758/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2793e-07 - acc: 1.0000 - val_loss: 3.1846e-07 - val_acc: 1.0000\n",
      "Epoch 759/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2748e-07 - acc: 1.0000 - val_loss: 3.1809e-07 - val_acc: 1.0000\n",
      "Epoch 760/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2699e-07 - acc: 1.0000 - val_loss: 3.1797e-07 - val_acc: 1.0000\n",
      "Epoch 761/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2651e-07 - acc: 1.0000 - val_loss: 3.1785e-07 - val_acc: 1.0000\n",
      "Epoch 762/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2636e-07 - acc: 1.0000 - val_loss: 3.1737e-07 - val_acc: 1.0000\n",
      "Epoch 763/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2612e-07 - acc: 1.0000 - val_loss: 3.1688e-07 - val_acc: 1.0000\n",
      "Epoch 764/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2557e-07 - acc: 1.0000 - val_loss: 3.1628e-07 - val_acc: 1.0000\n",
      "Epoch 765/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2548e-07 - acc: 1.0000 - val_loss: 3.1592e-07 - val_acc: 1.0000\n",
      "Epoch 766/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2500e-07 - acc: 1.0000 - val_loss: 3.1580e-07 - val_acc: 1.0000\n",
      "Epoch 767/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2472e-07 - acc: 1.0000 - val_loss: 3.1519e-07 - val_acc: 1.0000\n",
      "Epoch 768/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2427e-07 - acc: 1.0000 - val_loss: 3.1495e-07 - val_acc: 1.0000\n",
      "Epoch 769/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 4.3027e-07 - acc: 1.000 - 0s - loss: 3.2375e-07 - acc: 1.0000 - val_loss: 3.1422e-07 - val_acc: 1.0000\n",
      "Epoch 770/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 3.2324e-07 - acc: 1.0000 - val_loss: 3.1410e-07 - val_acc: 1.0000\n",
      "Epoch 771/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2288e-07 - acc: 1.0000 - val_loss: 3.1398e-07 - val_acc: 1.0000\n",
      "Epoch 772/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2257e-07 - acc: 1.0000 - val_loss: 3.1350e-07 - val_acc: 1.0000\n",
      "Epoch 773/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2215e-07 - acc: 1.0000 - val_loss: 3.1338e-07 - val_acc: 1.0000\n",
      "Epoch 774/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2170e-07 - acc: 1.0000 - val_loss: 3.1362e-07 - val_acc: 1.0000\n",
      "Epoch 775/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 3.0547e-07 - acc: 1.000 - 0s - loss: 3.2136e-07 - acc: 1.0000 - val_loss: 3.1302e-07 - val_acc: 1.0000\n",
      "Epoch 776/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2112e-07 - acc: 1.0000 - val_loss: 3.1217e-07 - val_acc: 1.0000\n",
      "Epoch 777/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2073e-07 - acc: 1.0000 - val_loss: 3.1181e-07 - val_acc: 1.0000\n",
      "Epoch 778/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2030e-07 - acc: 1.0000 - val_loss: 3.1132e-07 - val_acc: 1.0000\n",
      "Epoch 779/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.2003e-07 - acc: 1.0000 - val_loss: 3.1132e-07 - val_acc: 1.0000\n",
      "Epoch 780/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1967e-07 - acc: 1.0000 - val_loss: 3.1132e-07 - val_acc: 1.0000\n",
      "Epoch 781/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1943e-07 - acc: 1.0000 - val_loss: 3.1084e-07 - val_acc: 1.0000\n",
      "Epoch 782/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1909e-07 - acc: 1.0000 - val_loss: 3.1023e-07 - val_acc: 1.0000\n",
      "Epoch 783/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1867e-07 - acc: 1.0000 - val_loss: 3.0975e-07 - val_acc: 1.0000\n",
      "Epoch 784/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1825e-07 - acc: 1.0000 - val_loss: 3.0927e-07 - val_acc: 1.0000\n",
      "Epoch 785/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1776e-07 - acc: 1.0000 - val_loss: 3.0866e-07 - val_acc: 1.0000\n",
      "Epoch 786/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1716e-07 - acc: 1.0000 - val_loss: 3.0854e-07 - val_acc: 1.0000\n",
      "Epoch 787/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1716e-07 - acc: 1.0000 - val_loss: 3.0842e-07 - val_acc: 1.0000\n",
      "Epoch 788/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1676e-07 - acc: 1.0000 - val_loss: 3.0806e-07 - val_acc: 1.0000\n",
      "Epoch 789/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1646e-07 - acc: 1.0000 - val_loss: 3.0794e-07 - val_acc: 1.0000\n",
      "Epoch 790/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1604e-07 - acc: 1.0000 - val_loss: 3.0721e-07 - val_acc: 1.0000\n",
      "Epoch 791/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1567e-07 - acc: 1.0000 - val_loss: 3.0697e-07 - val_acc: 1.0000\n",
      "Epoch 792/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1546e-07 - acc: 1.0000 - val_loss: 3.0697e-07 - val_acc: 1.0000\n",
      "Epoch 793/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1513e-07 - acc: 1.0000 - val_loss: 3.0661e-07 - val_acc: 1.0000\n",
      "Epoch 794/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1476e-07 - acc: 1.0000 - val_loss: 3.0624e-07 - val_acc: 1.0000\n",
      "Epoch 795/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1455e-07 - acc: 1.0000 - val_loss: 3.0588e-07 - val_acc: 1.0000\n",
      "Epoch 796/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1413e-07 - acc: 1.0000 - val_loss: 3.0528e-07 - val_acc: 1.0000\n",
      "Epoch 797/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1392e-07 - acc: 1.0000 - val_loss: 3.0491e-07 - val_acc: 1.0000\n",
      "Epoch 798/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1373e-07 - acc: 1.0000 - val_loss: 3.0467e-07 - val_acc: 1.0000\n",
      "Epoch 799/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1352e-07 - acc: 1.0000 - val_loss: 3.0431e-07 - val_acc: 1.0000\n",
      "Epoch 800/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1325e-07 - acc: 1.0000 - val_loss: 3.0443e-07 - val_acc: 1.0000\n",
      "Epoch 801/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1280e-07 - acc: 1.0000 - val_loss: 3.0395e-07 - val_acc: 1.0000\n",
      "Epoch 802/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1264e-07 - acc: 1.0000 - val_loss: 3.0334e-07 - val_acc: 1.0000\n",
      "Epoch 803/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1231e-07 - acc: 1.0000 - val_loss: 3.0298e-07 - val_acc: 1.0000\n",
      "Epoch 804/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1195e-07 - acc: 1.0000 - val_loss: 3.0250e-07 - val_acc: 1.0000\n",
      "Epoch 805/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1159e-07 - acc: 1.0000 - val_loss: 3.0213e-07 - val_acc: 1.0000\n",
      "Epoch 806/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1122e-07 - acc: 1.0000 - val_loss: 3.0201e-07 - val_acc: 1.0000\n",
      "Epoch 807/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1071e-07 - acc: 1.0000 - val_loss: 3.0201e-07 - val_acc: 1.0000\n",
      "Epoch 808/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1056e-07 - acc: 1.0000 - val_loss: 3.0177e-07 - val_acc: 1.0000\n",
      "Epoch 809/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.1025e-07 - acc: 1.0000 - val_loss: 3.0165e-07 - val_acc: 1.0000\n",
      "Epoch 810/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0974e-07 - acc: 1.0000 - val_loss: 3.0153e-07 - val_acc: 1.0000\n",
      "Epoch 811/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0977e-07 - acc: 1.0000 - val_loss: 3.0153e-07 - val_acc: 1.0000\n",
      "Epoch 812/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0935e-07 - acc: 1.0000 - val_loss: 3.0141e-07 - val_acc: 1.0000\n",
      "Epoch 813/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0904e-07 - acc: 1.0000 - val_loss: 3.0117e-07 - val_acc: 1.0000\n",
      "Epoch 814/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0844e-07 - acc: 1.0000 - val_loss: 3.0093e-07 - val_acc: 1.0000\n",
      "Epoch 815/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0832e-07 - acc: 1.0000 - val_loss: 3.0020e-07 - val_acc: 1.0000\n",
      "Epoch 816/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0813e-07 - acc: 1.0000 - val_loss: 3.0008e-07 - val_acc: 1.0000\n",
      "Epoch 817/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0762e-07 - acc: 1.0000 - val_loss: 2.9960e-07 - val_acc: 1.0000\n",
      "Epoch 818/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0729e-07 - acc: 1.0000 - val_loss: 2.9935e-07 - val_acc: 1.0000\n",
      "Epoch 819/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0686e-07 - acc: 1.0000 - val_loss: 2.9887e-07 - val_acc: 1.0000\n",
      "Epoch 820/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0665e-07 - acc: 1.0000 - val_loss: 2.9875e-07 - val_acc: 1.0000\n",
      "Epoch 821/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0635e-07 - acc: 1.0000 - val_loss: 2.9839e-07 - val_acc: 1.0000\n",
      "Epoch 822/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0611e-07 - acc: 1.0000 - val_loss: 2.9802e-07 - val_acc: 1.0000\n",
      "Epoch 823/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0568e-07 - acc: 1.0000 - val_loss: 2.9754e-07 - val_acc: 1.0000\n",
      "Epoch 824/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0550e-07 - acc: 1.0000 - val_loss: 2.9742e-07 - val_acc: 1.0000\n",
      "Epoch 825/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0517e-07 - acc: 1.0000 - val_loss: 2.9742e-07 - val_acc: 1.0000\n",
      "Epoch 826/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0477e-07 - acc: 1.0000 - val_loss: 2.9718e-07 - val_acc: 1.0000\n",
      "Epoch 827/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0441e-07 - acc: 1.0000 - val_loss: 2.9669e-07 - val_acc: 1.0000\n",
      "Epoch 828/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0423e-07 - acc: 1.0000 - val_loss: 2.9657e-07 - val_acc: 1.0000\n",
      "Epoch 829/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 3.0402e-07 - acc: 1.0000 - val_loss: 2.9621e-07 - val_acc: 1.0000\n",
      "Epoch 830/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0368e-07 - acc: 1.0000 - val_loss: 2.9548e-07 - val_acc: 1.0000\n",
      "Epoch 831/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0317e-07 - acc: 1.0000 - val_loss: 2.9524e-07 - val_acc: 1.0000\n",
      "Epoch 832/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0278e-07 - acc: 1.0000 - val_loss: 2.9500e-07 - val_acc: 1.0000\n",
      "Epoch 833/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0247e-07 - acc: 1.0000 - val_loss: 2.9476e-07 - val_acc: 1.0000\n",
      "Epoch 834/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0217e-07 - acc: 1.0000 - val_loss: 2.9428e-07 - val_acc: 1.0000\n",
      "Epoch 835/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0193e-07 - acc: 1.0000 - val_loss: 2.9415e-07 - val_acc: 1.0000\n",
      "Epoch 836/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0169e-07 - acc: 1.0000 - val_loss: 2.9367e-07 - val_acc: 1.0000\n",
      "Epoch 837/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0141e-07 - acc: 1.0000 - val_loss: 2.9343e-07 - val_acc: 1.0000\n",
      "Epoch 838/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0111e-07 - acc: 1.0000 - val_loss: 2.9319e-07 - val_acc: 1.0000\n",
      "Epoch 839/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0108e-07 - acc: 1.0000 - val_loss: 2.9307e-07 - val_acc: 1.0000\n",
      "Epoch 840/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0066e-07 - acc: 1.0000 - val_loss: 2.9270e-07 - val_acc: 1.0000\n",
      "Epoch 841/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0017e-07 - acc: 1.0000 - val_loss: 2.9246e-07 - val_acc: 1.0000\n",
      "Epoch 842/1000\n",
      "1969/1969 [==============================] - 0s - loss: 3.0002e-07 - acc: 1.0000 - val_loss: 2.9222e-07 - val_acc: 1.0000\n",
      "Epoch 843/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9981e-07 - acc: 1.0000 - val_loss: 2.9198e-07 - val_acc: 1.0000\n",
      "Epoch 844/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9963e-07 - acc: 1.0000 - val_loss: 2.9162e-07 - val_acc: 1.0000\n",
      "Epoch 845/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9936e-07 - acc: 1.0000 - val_loss: 2.9162e-07 - val_acc: 1.0000\n",
      "Epoch 846/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9902e-07 - acc: 1.0000 - val_loss: 2.9137e-07 - val_acc: 1.0000\n",
      "Epoch 847/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9875e-07 - acc: 1.0000 - val_loss: 2.9089e-07 - val_acc: 1.0000\n",
      "Epoch 848/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9869e-07 - acc: 1.0000 - val_loss: 2.9089e-07 - val_acc: 1.0000\n",
      "Epoch 849/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9836e-07 - acc: 1.0000 - val_loss: 2.9077e-07 - val_acc: 1.0000\n",
      "Epoch 850/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9805e-07 - acc: 1.0000 - val_loss: 2.9041e-07 - val_acc: 1.0000\n",
      "Epoch 851/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9772e-07 - acc: 1.0000 - val_loss: 2.9016e-07 - val_acc: 1.0000\n",
      "Epoch 852/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9739e-07 - acc: 1.0000 - val_loss: 2.9016e-07 - val_acc: 1.0000\n",
      "Epoch 853/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9705e-07 - acc: 1.0000 - val_loss: 2.9004e-07 - val_acc: 1.0000\n",
      "Epoch 854/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9678e-07 - acc: 1.0000 - val_loss: 2.8956e-07 - val_acc: 1.0000\n",
      "Epoch 855/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9624e-07 - acc: 1.0000 - val_loss: 2.8932e-07 - val_acc: 1.0000\n",
      "Epoch 856/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9587e-07 - acc: 1.0000 - val_loss: 2.8896e-07 - val_acc: 1.0000\n",
      "Epoch 857/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9560e-07 - acc: 1.0000 - val_loss: 2.8859e-07 - val_acc: 1.0000\n",
      "Epoch 858/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9533e-07 - acc: 1.0000 - val_loss: 2.8835e-07 - val_acc: 1.0000\n",
      "Epoch 859/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9494e-07 - acc: 1.0000 - val_loss: 2.8811e-07 - val_acc: 1.0000\n",
      "Epoch 860/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9454e-07 - acc: 1.0000 - val_loss: 2.8811e-07 - val_acc: 1.0000\n",
      "Epoch 861/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9448e-07 - acc: 1.0000 - val_loss: 2.8775e-07 - val_acc: 1.0000\n",
      "Epoch 862/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9412e-07 - acc: 1.0000 - val_loss: 2.8726e-07 - val_acc: 1.0000\n",
      "Epoch 863/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9394e-07 - acc: 1.0000 - val_loss: 2.8666e-07 - val_acc: 1.0000\n",
      "Epoch 864/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9360e-07 - acc: 1.0000 - val_loss: 2.8618e-07 - val_acc: 1.0000\n",
      "Epoch 865/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9330e-07 - acc: 1.0000 - val_loss: 2.8618e-07 - val_acc: 1.0000\n",
      "Epoch 866/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9309e-07 - acc: 1.0000 - val_loss: 2.8569e-07 - val_acc: 1.0000\n",
      "Epoch 867/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9282e-07 - acc: 1.0000 - val_loss: 2.8509e-07 - val_acc: 1.0000\n",
      "Epoch 868/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9245e-07 - acc: 1.0000 - val_loss: 2.8460e-07 - val_acc: 1.0000\n",
      "Epoch 869/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9221e-07 - acc: 1.0000 - val_loss: 2.8460e-07 - val_acc: 1.0000\n",
      "Epoch 870/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9182e-07 - acc: 1.0000 - val_loss: 2.8436e-07 - val_acc: 1.0000\n",
      "Epoch 871/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9155e-07 - acc: 1.0000 - val_loss: 2.8424e-07 - val_acc: 1.0000\n",
      "Epoch 872/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9121e-07 - acc: 1.0000 - val_loss: 2.8376e-07 - val_acc: 1.0000\n",
      "Epoch 873/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9097e-07 - acc: 1.0000 - val_loss: 2.8352e-07 - val_acc: 1.0000\n",
      "Epoch 874/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9076e-07 - acc: 1.0000 - val_loss: 2.8327e-07 - val_acc: 1.0000\n",
      "Epoch 875/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9046e-07 - acc: 1.0000 - val_loss: 2.8315e-07 - val_acc: 1.0000\n",
      "Epoch 876/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9024e-07 - acc: 1.0000 - val_loss: 2.8315e-07 - val_acc: 1.0000\n",
      "Epoch 877/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.9003e-07 - acc: 1.0000 - val_loss: 2.8315e-07 - val_acc: 1.0000\n",
      "Epoch 878/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8976e-07 - acc: 1.0000 - val_loss: 2.8303e-07 - val_acc: 1.0000\n",
      "Epoch 879/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8949e-07 - acc: 1.0000 - val_loss: 2.8279e-07 - val_acc: 1.0000\n",
      "Epoch 880/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8921e-07 - acc: 1.0000 - val_loss: 2.8267e-07 - val_acc: 1.0000\n",
      "Epoch 881/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8888e-07 - acc: 1.0000 - val_loss: 2.8219e-07 - val_acc: 1.0000\n",
      "Epoch 882/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8861e-07 - acc: 1.0000 - val_loss: 2.8182e-07 - val_acc: 1.0000\n",
      "Epoch 883/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8834e-07 - acc: 1.0000 - val_loss: 2.8158e-07 - val_acc: 1.0000\n",
      "Epoch 884/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8800e-07 - acc: 1.0000 - val_loss: 2.8146e-07 - val_acc: 1.0000\n",
      "Epoch 885/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8773e-07 - acc: 1.0000 - val_loss: 2.8122e-07 - val_acc: 1.0000\n",
      "Epoch 886/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8755e-07 - acc: 1.0000 - val_loss: 2.8110e-07 - val_acc: 1.0000\n",
      "Epoch 887/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8734e-07 - acc: 1.0000 - val_loss: 2.8098e-07 - val_acc: 1.0000\n",
      "Epoch 888/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 2.8710e-07 - acc: 1.0000 - val_loss: 2.8025e-07 - val_acc: 1.0000\n",
      "Epoch 889/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8676e-07 - acc: 1.0000 - val_loss: 2.8001e-07 - val_acc: 1.0000\n",
      "Epoch 890/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8646e-07 - acc: 1.0000 - val_loss: 2.7953e-07 - val_acc: 1.0000\n",
      "Epoch 891/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8619e-07 - acc: 1.0000 - val_loss: 2.7928e-07 - val_acc: 1.0000\n",
      "Epoch 892/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8610e-07 - acc: 1.0000 - val_loss: 2.7904e-07 - val_acc: 1.0000\n",
      "Epoch 893/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8591e-07 - acc: 1.0000 - val_loss: 2.7856e-07 - val_acc: 1.0000\n",
      "Epoch 894/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8558e-07 - acc: 1.0000 - val_loss: 2.7832e-07 - val_acc: 1.0000\n",
      "Epoch 895/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8537e-07 - acc: 1.0000 - val_loss: 2.7832e-07 - val_acc: 1.0000\n",
      "Epoch 896/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8507e-07 - acc: 1.0000 - val_loss: 2.7820e-07 - val_acc: 1.0000\n",
      "Epoch 897/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8467e-07 - acc: 1.0000 - val_loss: 2.7820e-07 - val_acc: 1.0000\n",
      "Epoch 898/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8422e-07 - acc: 1.0000 - val_loss: 2.7807e-07 - val_acc: 1.0000\n",
      "Epoch 899/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8404e-07 - acc: 1.0000 - val_loss: 2.7795e-07 - val_acc: 1.0000\n",
      "Epoch 900/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8374e-07 - acc: 1.0000 - val_loss: 2.7795e-07 - val_acc: 1.0000\n",
      "Epoch 901/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8355e-07 - acc: 1.0000 - val_loss: 2.7759e-07 - val_acc: 1.0000\n",
      "Epoch 902/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8343e-07 - acc: 1.0000 - val_loss: 2.7735e-07 - val_acc: 1.0000\n",
      "Epoch 903/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8322e-07 - acc: 1.0000 - val_loss: 2.7687e-07 - val_acc: 1.0000\n",
      "Epoch 904/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8307e-07 - acc: 1.0000 - val_loss: 2.7662e-07 - val_acc: 1.0000\n",
      "Epoch 905/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8283e-07 - acc: 1.0000 - val_loss: 2.7626e-07 - val_acc: 1.0000\n",
      "Epoch 906/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8268e-07 - acc: 1.0000 - val_loss: 2.7602e-07 - val_acc: 1.0000\n",
      "Epoch 907/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8252e-07 - acc: 1.0000 - val_loss: 2.7590e-07 - val_acc: 1.0000\n",
      "Epoch 908/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8231e-07 - acc: 1.0000 - val_loss: 2.7590e-07 - val_acc: 1.0000\n",
      "Epoch 909/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8216e-07 - acc: 1.0000 - val_loss: 2.7541e-07 - val_acc: 1.0000\n",
      "Epoch 910/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8192e-07 - acc: 1.0000 - val_loss: 2.7541e-07 - val_acc: 1.0000\n",
      "Epoch 911/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8171e-07 - acc: 1.0000 - val_loss: 2.7517e-07 - val_acc: 1.0000\n",
      "Epoch 912/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8143e-07 - acc: 1.0000 - val_loss: 2.7493e-07 - val_acc: 1.0000\n",
      "Epoch 913/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8116e-07 - acc: 1.0000 - val_loss: 2.7457e-07 - val_acc: 1.0000\n",
      "Epoch 914/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8107e-07 - acc: 1.0000 - val_loss: 2.7457e-07 - val_acc: 1.0000\n",
      "Epoch 915/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8086e-07 - acc: 1.0000 - val_loss: 2.7433e-07 - val_acc: 1.0000\n",
      "Epoch 916/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8074e-07 - acc: 1.0000 - val_loss: 2.7421e-07 - val_acc: 1.0000\n",
      "Epoch 917/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8062e-07 - acc: 1.0000 - val_loss: 2.7396e-07 - val_acc: 1.0000\n",
      "Epoch 918/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8038e-07 - acc: 1.0000 - val_loss: 2.7384e-07 - val_acc: 1.0000\n",
      "Epoch 919/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.8013e-07 - acc: 1.0000 - val_loss: 2.7348e-07 - val_acc: 1.0000\n",
      "Epoch 920/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7989e-07 - acc: 1.0000 - val_loss: 2.7324e-07 - val_acc: 1.0000\n",
      "Epoch 921/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7947e-07 - acc: 1.0000 - val_loss: 2.7312e-07 - val_acc: 1.0000\n",
      "Epoch 922/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7922e-07 - acc: 1.0000 - val_loss: 2.7312e-07 - val_acc: 1.0000\n",
      "Epoch 923/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7904e-07 - acc: 1.0000 - val_loss: 2.7263e-07 - val_acc: 1.0000\n",
      "Epoch 924/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7880e-07 - acc: 1.0000 - val_loss: 2.7251e-07 - val_acc: 1.0000\n",
      "Epoch 925/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7853e-07 - acc: 1.0000 - val_loss: 2.7251e-07 - val_acc: 1.0000\n",
      "Epoch 926/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7817e-07 - acc: 1.0000 - val_loss: 2.7227e-07 - val_acc: 1.0000\n",
      "Epoch 927/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7807e-07 - acc: 1.0000 - val_loss: 2.7215e-07 - val_acc: 1.0000\n",
      "Epoch 928/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7795e-07 - acc: 1.0000 - val_loss: 2.7215e-07 - val_acc: 1.0000\n",
      "Epoch 929/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7756e-07 - acc: 1.0000 - val_loss: 2.7167e-07 - val_acc: 1.0000\n",
      "Epoch 930/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7765e-07 - acc: 1.0000 - val_loss: 2.7143e-07 - val_acc: 1.0000\n",
      "Epoch 931/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7744e-07 - acc: 1.0000 - val_loss: 2.7143e-07 - val_acc: 1.0000\n",
      "Epoch 932/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7735e-07 - acc: 1.0000 - val_loss: 2.7094e-07 - val_acc: 1.0000\n",
      "Epoch 933/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7692e-07 - acc: 1.0000 - val_loss: 2.7070e-07 - val_acc: 1.0000\n",
      "Epoch 934/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7674e-07 - acc: 1.0000 - val_loss: 2.7058e-07 - val_acc: 1.0000\n",
      "Epoch 935/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7662e-07 - acc: 1.0000 - val_loss: 2.7034e-07 - val_acc: 1.0000\n",
      "Epoch 936/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7650e-07 - acc: 1.0000 - val_loss: 2.7010e-07 - val_acc: 1.0000\n",
      "Epoch 937/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7614e-07 - acc: 1.0000 - val_loss: 2.6985e-07 - val_acc: 1.0000\n",
      "Epoch 938/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7599e-07 - acc: 1.0000 - val_loss: 2.6961e-07 - val_acc: 1.0000\n",
      "Epoch 939/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7593e-07 - acc: 1.0000 - val_loss: 2.6973e-07 - val_acc: 1.0000\n",
      "Epoch 940/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7559e-07 - acc: 1.0000 - val_loss: 2.6913e-07 - val_acc: 1.0000\n",
      "Epoch 941/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7550e-07 - acc: 1.0000 - val_loss: 2.6877e-07 - val_acc: 1.0000\n",
      "Epoch 942/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7535e-07 - acc: 1.0000 - val_loss: 2.6840e-07 - val_acc: 1.0000\n",
      "Epoch 943/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7529e-07 - acc: 1.0000 - val_loss: 2.6828e-07 - val_acc: 1.0000\n",
      "Epoch 944/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7511e-07 - acc: 1.0000 - val_loss: 2.6804e-07 - val_acc: 1.0000\n",
      "Epoch 945/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7496e-07 - acc: 1.0000 - val_loss: 2.6780e-07 - val_acc: 1.0000\n",
      "Epoch 946/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7471e-07 - acc: 1.0000 - val_loss: 2.6768e-07 - val_acc: 1.0000\n",
      "Epoch 947/1000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1969/1969 [==============================] - 0s - loss: 2.7450e-07 - acc: 1.0000 - val_loss: 2.6768e-07 - val_acc: 1.0000\n",
      "Epoch 948/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 2.2165e-07 - acc: 1.000 - 0s - loss: 2.7435e-07 - acc: 1.0000 - val_loss: 2.6768e-07 - val_acc: 1.0000\n",
      "Epoch 949/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7399e-07 - acc: 1.0000 - val_loss: 2.6731e-07 - val_acc: 1.0000\n",
      "Epoch 950/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7372e-07 - acc: 1.0000 - val_loss: 2.6707e-07 - val_acc: 1.0000\n",
      "Epoch 951/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7353e-07 - acc: 1.0000 - val_loss: 2.6707e-07 - val_acc: 1.0000\n",
      "Epoch 952/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7338e-07 - acc: 1.0000 - val_loss: 2.6671e-07 - val_acc: 1.0000\n",
      "Epoch 953/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7323e-07 - acc: 1.0000 - val_loss: 2.6671e-07 - val_acc: 1.0000\n",
      "Epoch 954/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7302e-07 - acc: 1.0000 - val_loss: 2.6659e-07 - val_acc: 1.0000\n",
      "Epoch 955/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7278e-07 - acc: 1.0000 - val_loss: 2.6623e-07 - val_acc: 1.0000\n",
      "Epoch 956/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 2.3888e-07 - acc: 1.000 - 0s - loss: 2.7250e-07 - acc: 1.0000 - val_loss: 2.6598e-07 - val_acc: 1.0000\n",
      "Epoch 957/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7241e-07 - acc: 1.0000 - val_loss: 2.6562e-07 - val_acc: 1.0000\n",
      "Epoch 958/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7217e-07 - acc: 1.0000 - val_loss: 2.6574e-07 - val_acc: 1.0000\n",
      "Epoch 959/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7187e-07 - acc: 1.0000 - val_loss: 2.6550e-07 - val_acc: 1.0000\n",
      "Epoch 960/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7169e-07 - acc: 1.0000 - val_loss: 2.6526e-07 - val_acc: 1.0000\n",
      "Epoch 961/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 2.1746e-07 - acc: 1.000 - 0s - loss: 2.7132e-07 - acc: 1.0000 - val_loss: 2.6514e-07 - val_acc: 1.0000\n",
      "Epoch 962/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7102e-07 - acc: 1.0000 - val_loss: 2.6478e-07 - val_acc: 1.0000\n",
      "Epoch 963/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7084e-07 - acc: 1.0000 - val_loss: 2.6429e-07 - val_acc: 1.0000\n",
      "Epoch 964/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7069e-07 - acc: 1.0000 - val_loss: 2.6393e-07 - val_acc: 1.0000\n",
      "Epoch 965/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7042e-07 - acc: 1.0000 - val_loss: 2.6357e-07 - val_acc: 1.0000\n",
      "Epoch 966/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.7011e-07 - acc: 1.0000 - val_loss: 2.6345e-07 - val_acc: 1.0000\n",
      "Epoch 967/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6984e-07 - acc: 1.0000 - val_loss: 2.6345e-07 - val_acc: 1.0000\n",
      "Epoch 968/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6951e-07 - acc: 1.0000 - val_loss: 2.6296e-07 - val_acc: 1.0000\n",
      "Epoch 969/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6924e-07 - acc: 1.0000 - val_loss: 2.6272e-07 - val_acc: 1.0000\n",
      "Epoch 970/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6905e-07 - acc: 1.0000 - val_loss: 2.6260e-07 - val_acc: 1.0000\n",
      "Epoch 971/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6884e-07 - acc: 1.0000 - val_loss: 2.6236e-07 - val_acc: 1.0000\n",
      "Epoch 972/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6848e-07 - acc: 1.0000 - val_loss: 2.6212e-07 - val_acc: 1.0000\n",
      "Epoch 973/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6821e-07 - acc: 1.0000 - val_loss: 2.6187e-07 - val_acc: 1.0000\n",
      "Epoch 974/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6787e-07 - acc: 1.0000 - val_loss: 2.6163e-07 - val_acc: 1.0000\n",
      "Epoch 975/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6754e-07 - acc: 1.0000 - val_loss: 2.6103e-07 - val_acc: 1.0000\n",
      "Epoch 976/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6724e-07 - acc: 1.0000 - val_loss: 2.6066e-07 - val_acc: 1.0000\n",
      "Epoch 977/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6712e-07 - acc: 1.0000 - val_loss: 2.6066e-07 - val_acc: 1.0000\n",
      "Epoch 978/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6678e-07 - acc: 1.0000 - val_loss: 2.6042e-07 - val_acc: 1.0000\n",
      "Epoch 979/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6621e-07 - acc: 1.0000 - val_loss: 2.6030e-07 - val_acc: 1.0000\n",
      "Epoch 980/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6639e-07 - acc: 1.0000 - val_loss: 2.6006e-07 - val_acc: 1.0000\n",
      "Epoch 981/1000\n",
      "1969/1969 [==============================] - ETA: 0s - loss: 2.3656e-07 - acc: 1.000 - 0s - loss: 2.6584e-07 - acc: 1.0000 - val_loss: 2.5994e-07 - val_acc: 1.0000\n",
      "Epoch 982/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6551e-07 - acc: 1.0000 - val_loss: 2.5970e-07 - val_acc: 1.0000\n",
      "Epoch 983/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6527e-07 - acc: 1.0000 - val_loss: 2.5946e-07 - val_acc: 1.0000\n",
      "Epoch 984/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6512e-07 - acc: 1.0000 - val_loss: 2.5933e-07 - val_acc: 1.0000\n",
      "Epoch 985/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6485e-07 - acc: 1.0000 - val_loss: 2.5897e-07 - val_acc: 1.0000\n",
      "Epoch 986/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6460e-07 - acc: 1.0000 - val_loss: 2.5897e-07 - val_acc: 1.0000\n",
      "Epoch 987/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6439e-07 - acc: 1.0000 - val_loss: 2.5861e-07 - val_acc: 1.0000\n",
      "Epoch 988/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6400e-07 - acc: 1.0000 - val_loss: 2.5825e-07 - val_acc: 1.0000\n",
      "Epoch 989/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6376e-07 - acc: 1.0000 - val_loss: 2.5776e-07 - val_acc: 1.0000\n",
      "Epoch 990/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6348e-07 - acc: 1.0000 - val_loss: 2.5728e-07 - val_acc: 1.0000\n",
      "Epoch 991/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6318e-07 - acc: 1.0000 - val_loss: 2.5704e-07 - val_acc: 1.0000\n",
      "Epoch 992/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6297e-07 - acc: 1.0000 - val_loss: 2.5692e-07 - val_acc: 1.0000\n",
      "Epoch 993/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6294e-07 - acc: 1.0000 - val_loss: 2.5680e-07 - val_acc: 1.0000\n",
      "Epoch 994/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6215e-07 - acc: 1.0000 - val_loss: 2.5655e-07 - val_acc: 1.0000\n",
      "Epoch 995/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6206e-07 - acc: 1.0000 - val_loss: 2.5655e-07 - val_acc: 1.0000\n",
      "Epoch 996/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6191e-07 - acc: 1.0000 - val_loss: 2.5631e-07 - val_acc: 1.0000\n",
      "Epoch 997/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6164e-07 - acc: 1.0000 - val_loss: 2.5595e-07 - val_acc: 1.0000\n",
      "Epoch 998/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6139e-07 - acc: 1.0000 - val_loss: 2.5535e-07 - val_acc: 1.0000\n",
      "Epoch 999/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6112e-07 - acc: 1.0000 - val_loss: 2.5498e-07 - val_acc: 1.0000\n",
      "Epoch 1000/1000\n",
      "1969/1969 [==============================] - 0s - loss: 2.6097e-07 - acc: 1.0000 - val_loss: 2.5450e-07 - val_acc: 1.0000\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<keras.callbacks.History at 0x1c21053b50>"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model = ks.models.Sequential()\n",
    "model.add(Dense(128, input_dim=data_features.shape[1]))\n",
    "model.add(Activation('relu'))\n",
    "model.add(Dense(64))\n",
    "model.add(Activation('relu'))\n",
    "model.add(Dense(32))\n",
    "model.add(Activation('relu'))\n",
    "model.add(Dense(16))\n",
    "model.add(Activation('relu'))\n",
    "model.add(Dense(2))\n",
    "model.add(Activation('softmax'))\n",
    "\n",
    "model.compile(loss='categorical_crossentropy',optimizer='adadelta',metrics=['accuracy'])\n",
    "model.fit(x=data_train,y=labels_train,batch_size=128,nb_epoch=1000,verbose=1,validation_data=(data_test,labels_test))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 神经网络 + SVM\n",
    "45 => 128 => 64 => 32 => 16 => SVM"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "1.0\n",
      "1.0\n"
     ]
    }
   ],
   "source": [
    "get_feature = K.function([model.layers[0].input],[model.layers[2].output])\n",
    "mid_features_train = get_feature([data_train])[0]\n",
    "mid_features_test  = get_feature([data_test])[0]\n",
    "clf = svm.SVC()\n",
    "clf.fit(mid_features_train, class_train)\n",
    "print(clf.score(mid_features_train, class_train))\n",
    "print(clf.score(mid_features_test, class_test))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## 其他机器学习算法\n",
    "- KNN\n",
    "- 线性SVM\n",
    "- 基于核函数的SVM (RBF SVM), Radial basis function kernel\n",
    "- 决策树\n",
    "- 随机森林"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Nearest Neighbors\n",
      "train: 1.0\n",
      "test: 1.0\n",
      "Linear SVM\n",
      "train: 1.0\n",
      "test: 1.0\n",
      "RBF SVM\n",
      "train: 1.0\n",
      "test: 1.0\n",
      "Decision Tree\n",
      "train: 1.0\n",
      "test: 1.0\n",
      "Random Forest\n",
      "train: 0.939563230066\n",
      "test: 0.941176470588\n"
     ]
    }
   ],
   "source": [
    "classifiers = [\n",
    "    KNeighborsClassifier(4),\n",
    "    svm.SVC(kernel=\"linear\", C=0.025),\n",
    "    svm.SVC(),\n",
    "    DecisionTreeClassifier(max_depth=3),\n",
    "    RandomForestClassifier(max_depth=5, n_estimators=10, max_features=1)\n",
    "    ]\n",
    "names = [\"Nearest Neighbors\", \"Linear SVM\", \"RBF SVM\", \"Decision Tree\",\n",
    "         \"Random Forest\"]\n",
    "for name, clf in zip(names,classifiers):\n",
    "    clf.fit(data_train,class_train)\n",
    "    print(name)\n",
    "    print(\"train: {}\".format(clf.score(data_train, class_train)))\n",
    "    print(\"test: {}\".format(clf.score(data_test, class_test)))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 2",
   "language": "python",
   "name": "python2"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
